JAVA†
sprintf†
String a = String.format("%s", "test");
Date の事情†
- 基本的に unixtime のラッパ
- timezone は自分で考慮
Calendar の事情†
- 現在時刻を得るには Calendar.getInstance(); などとめんどくさい・・
- タイムゾーンなども設定できる。
- toDate すると タイムゾーンは消える
CSV†
Escape†
BOM†
- Excel で開くことができる CSV は SJIS でつくるか、BOM 付 UTF-8 で作る
public static byte[] addBOM(String string) {
try {
byte[] resultBytes;
ByteArrayOutputStream stream = new ByteArrayOutputStream();
stream.write(new byte[] { (byte) 0xEF, (byte) 0xBB, (byte) 0xBF });
stream.write(string.getBytes());
resultBytes = stream.toByteArray();
stream.close();
return resultBytes;
} catch (IOException e) {
return string;
}
}
response はこんな感じ
Response.ok(addBOM(resultString)).header("Content-Disposition", "attachment; filename=file.csv").type("text/comma-separated-values").build();
※ただし、このファイルを再度 JAVA で処理する際には BOM を捨てる処理が必要
var_dump†
php の var_dump に当たるものがある
libraryDependencies += "org.apache.commons" % "commons-lang3" % "3.0"
ToStringBuilder