兩種方式都很簡單。
您可以通過覆蓋其draw(Canvas)
方法在任何View
畫出你的價值觀。將花費最多時間的事情是將你的值轉換爲視圖的座標,這實際上是原始代數。
你不需要任何工具來生成*.csv
文件 - 它有非常簡單的格式,你可以自己創建它。在你的情況下,它的內容將是這樣的:
"time","value"
"12300000","78.99"
"12340000","89.77"
...
下面是代碼,這會產生這樣的文件:
long[] time = ...; // this contains your time values
float[] values = ...; // this contains your float values
File outFile = new File("/mnt/sdcard/my_output_file.csv");
BufferedWriter buffWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile)));
buffWriter.write("\"time\",\"values\"\n");
buffWriter.flush();
for (int i = 0; i < values.length; i++) {
buffWriter.write("\"" + time[i] + "\",\"" + values[i] + "\"\n");
buffWriter.flush();
}
buffWriter.close();
好,謝謝。我已經看過一些關於csv文件的教程。我想我會更好地寫入文件,因爲我填滿了數組,而不是填充到最後。根據所需的代碼,你可以更具體一些嗎? – Rokky100 2012-02-24 10:20:27
我編輯了答案 - 查看代碼。 – 2012-02-24 10:42:21
好的非常感謝。我剛剛嘗試過,而且eclipse不喜歡第五行。它給出以下錯誤:「標記語法錯誤」「\」time \「,\」values + \「\ n」「,刪除此標記」。這只是爲了爲列創建標題,對吧?我嘗試了大量的.write入門格式,而且都沒有工作。我試着把它留在外面,這導致了上面一行'FileOutputStream'上的一個不同的錯誤。 「默認構造函數不能處理由隱式超級構造函數拋出的異常類型FileNotFoundException。必須定義一個顯式構造函數」。有任何想法嗎? – Rokky100 2012-02-24 20:56:41