2016-06-13 82 views
2

我想用下面的代码生成在我的应用程序的CSV文件:英镑符号(£)在生成CSV文件显示为£

如果我打开在Excel 2007中的文件,然后我得到£无论何处出现£标志。

try { 
FileWriter fw = new FileWriter(filename); 

fw.append("Item Name"); 
fw.append(','); 

fw.append("Item Sku"); 
fw.append(','); 

fw.append("Tax Rate (%)"); 
fw.append(','); 

fw.append("Item Qty"); 
fw.append(','); 

fw.append("Unit Price (\u20AC)"); 
fw.append(','); 

fw.append("Total Price (\u20AC)"); 
fw.append(','); 

fw.close(); 
} 
catch (Exception e) { 
Log.e(getClass().getSimpleName() ,"Error in create CSV File: "+e.getMessage()) 
} 
+1

你有什么解决方案吗?如果你有,然后请添加您的答案。我有与欧元符号相同的问题。提前致谢。 – rockstar

+1

我在我的nodejs应用程序中遇到了同样的问题,您可能需要使用''\ t“'分隔符,并在您的csv字符串中对BOM''\ ufeff''进行preappend,并将编码设置为''utf16le'',就像我一样在这里做的:https://stackoverflow.com/a/45232685/5228251我不知道的Java,所以你需要看看如何在Java中做到这一点。希望这可以帮助 – narainsagar

回答

-1

您需要使用windows-1252编码,而不是默认值。这对我有效。