※ ChatGPTを利用し、要約された質問です(原文:Excelに時刻を入れたい)
Excelに時刻を入れる方法と表示結果について
2008/03/18 13:04
このQ&Aのポイント
JAVA初心者ですが、ExcelにDBから取得した時刻データを正しく表示する方法を教えてください。
Timeタイプとして入れるとセル値がシリアルになり、Stringとして入れるとアポストロフィが付いてしまいます。
また、エクセルの書式は「時刻」です。以下のソースコードを使用しています。
はじめまして。
JAVA初心者です。
DBから取得したデータ「09:00」をExcelに入れようとしているんですが、表示された結果が正しくないのです。
DBからTimeタイプとして入れたら、セル値がシリアルになってしまう。
他、Stringとしたら、セル値にアポストロフィが付いてしまう。
今のところ解決方法はありません。
どうすれば、正しい結果(9:00)が表示されるのでしょうか。
教えていただけませんか?
ついでに、既存エクセルの書式は「時刻」です。
ソースは以下の通りです。(Timeタイプとする)
-------------------jsp ソース------------------
FileInputStream inputStream = null;
FileOutputStream outputStream = null;
File excel = new File("C:\\123123.xls");
inputStream = new FileInputStream(excel);
HSSFWorkbook workBook = new HSSFWorkbook(inputStream);
HSSFSheet newSheet = workBook.getSheetAt(0);
HSSFRow newRow = newSheet.getRow(16);
HSSFCell newCell1 = newRow.getCell((short) 6);
java.sql.ResultSet rs = null;
rs = DBtest.DBGetdate();
Time modifyTimeTemp = null;
HSSFRow newRowtemp = newSheet.getRow(18);
HSSFCell newCell1temp = newRow.getCell((short) 6);
while(rs.next()){
modifyTimeTemp = rs.getTime("Time");
}
//newCell1temp:正しく入力されたデータ
newCell1.setCellStyle(newCell1temp.getCellStyle());
newCell1.setCellValue(modifyTimeTemp);
try{
response.setContentType("application/msexcel");
response.setHeader("Content-Disposition",
"attachment; filename=jsp.xls");
OutputStream outs = response.getOutputStream();
workBook.write(outs);
outs.close();
}catch(Exception e){
e.printStackTrace();
}
質問の原文を閉じる
質問の原文を表示する
お礼
atonさん ご回答、ありがとうございました。 Excelの書式の変更を行い、結果が出てきました。 問題は、すでに解決しました。 ありがとうございました。