5

Javaを使用してCSVファイルを作成します。コードの一部を次に示します。

try{

    FileWriter writer = new FileWriter(sFileName);

    writer.append("Title");
    for(StoredArticle sa3:historyFile.keySet()){
        for(String k3:sa3.getTimeAndPopularity().keySet()){
            writer.append(',');
            writer.append(k3);
        }
    }
    writer.append('\n');

問題は、CSV ファイルを正常に作成できることです。for ループでは、k3 は形式として表示される時間です2013/07/22 15:40:23.が、秒の「23」は表示できません。他はいい感じです。何が問題なのか助けてください。

これは私のクラス全体のコードです

package uk.ac.ncl.fanyaoxia.createCSV;

import java.io.FileWriter;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import uk.ac.ncl.fanyaoxia.monitor.MonitorRecentUpdates;
import uk.ac.ncl.fanyaoxia.monitor.StoredArticle;
import uk.ac.ncl.fanyaoxia.webpagefetch.ReadXml;

public class CreateCSVFile {
    private static Map < StoredArticle, ReadXml > historyFile;

    public CreateCSVFile() {
        historyFile = new HashMap < StoredArticle, ReadXml > ();
    }
    public void createFile() {
        generateCsvFile("HistoryTable.csv");
    }

    private static void generateCsvFile(String sFileName) {
        MonitorRecentUpdates csvFile = new MonitorRecentUpdates();
        historyFile = csvFile.getMap();
        try {

            FileWriter writer = new FileWriter(sFileName);

            writer.append("Title");
            for (StoredArticle sa3: historyFile.keySet()) {
                for (String k3: sa3.getTimeAndPopularity().keySet()) {
                    writer.append(',');
                    writer.append(k3);
                }
            }
            writer.append('\n');

            for (StoredArticle sa3: historyFile.keySet()) {
                writer.append(sa3.getStoredTitle());
                for (String k3: sa3.getTimeAndPopularity().keySet()) {
                    writer.append(',');
                    writer.append(sa3.getTimeAndPopularity().get(k3).toString());
                }
                writer.append('\n');
            }
            writer.flush();
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
4

1 に答える 1