2015-10-18 91 views
-1

我的Csv文件有問題,在我的應用程序中,我想將所有數據庫插入Csv文件並通過電子郵件發送。 除了一件事以外,每件事情都很順利 - 文件的編碼不是UTF-8 ,所以每次我通過電子郵件發送文件時,我都必須更改自己的編碼。使用utf-8創建csv文件

我沒有發現任何方式,當我創建的文件,我可以更改編碼, 所以我想知道是否可以插入一個CSV文件到資源文件夾中的我的應用程序編碼UTF-8, 然後通過電子郵件發送這個文件。

所以我問的是,這可能嗎? 如果是這樣,我該怎麼辦?

我目前正在創建具有openCSV String csv = android.os.Environment.getExternalStorageDirectory().getAbsolutePath(); try { File myFile = new File(csv + "/Data.csv"); myFile.createNewFile(); CSVWriter writer = new CSVWriter(new FileWriter(myFile), ','); }

+0

我搜索了很久, 我沒有找到答案。 你有沒有我能看到的例子? – Fisher

+0

我不讀csv文件在我的手機, 我只是建立在它寫,然後 我把它發送到電子郵件,並在我的電腦中打開該文件。 我不知道你在哪裏找到答案, 但我找不到任何改變編碼的代碼段, 也許是我的白癡,Idk): 你能給我發一個你找到答案的鏈接嗎? – Fisher

+0

好吧告訴我,如果我是對的, 這段代碼創建一個文件讀取器,讀取UTF-8編碼的文件, ,所以當我想從csv文件中獲得一行或一行時,我會得到字符串或UTF的行-8編碼和使用它在我的代碼或什麼... 如果這是代碼的事情它不會幫助。 當我打開我的電腦文件的默認編碼不是UTF-8 每次我通過電子郵件發送文件我必須要改變的編碼(在我的電腦)時 如果此代碼你送我想該怎麼辦我說然後它不起作用): 而我不知道爲什麼.... 和ty幫忙反正 – Fisher

回答

0

csv文件,我刪除,同時尋找一個解決問題的方法,我們交換了冗長的評論。

您必須在CSVWriter上使用不同的構造函數,那麼您可以指定文件編碼。 定義當JVM被推出將有助於太file.encoding

java -Dfile.encoding=UTF-8 -jar foo.jar 

已經有一個文件解決方案堆棧溢出的問題,這顯示了一個例子:setting a UTF-8 in java and csv file