2011-04-04 77 views
3

我有一個應用程序,可以從數據庫中選擇數據,然後在TableView中顯示結果。接下來我要做的是將所選數據(目前在TableView中顯示)保存到文本文件中,以便將其複製到PC上並打印到紙上。我試圖實現的是每列之間的空格相等。我用這樣的文本保存到文件:ANDROID:如何格式化必須保存在文本文件中的文本

out.write("\n "+name+" \t"+amount+" \t"+price); 

但是在文本編輯器打開該文件後,它看起來並不好。這是正確的方法嗎?如果不是什麼?

回答

5

您可以使用函數String.format來做到這一點。

例如:

out.write (String.format("%s %10d %10d", name, amount, price)); 

此代碼將打印name.toString(),然後在整數與10個字符寬度字段量和價格。

您可以閱讀有關格式字符串here

+0

謝謝,這就是我一直在尋找的。 – user691285 2011-04-05 10:01:31

0

爲什麼不將數據保存在HTML格式的文件中?然後你可以用HTML表格標籤建立你的表格。

或者,由於要將報告打印成紙張,因此您可能需要嘗試保存爲更易打印的PDF格式。我認爲有幾種免費/開源PDF編寫器庫用於Java。也許其中一些也可以用於Android。

0

如果你有一定的列數據的最大長度(讓它是靜態的或動態計算),你可以做這樣的事情;

String column = "     "; // enough spaces for actual data. 
out.write(name + column.substring(name.length)); 
etc.. 
相關問題