使用utf-8创建csv文件

使用utf-8创建csv文件,csv,android-studio,utf-8,Csv,Android Studio,Utf 8,我的Csv文件有问题,在我的应用程序中,我想将所有数据库插入Csv文件并通过电子邮件发送。 除了一件事之外,每件事都很顺利——文件的编码不是UTF-8 因此,每次我通过电子邮件发送文件时,我必须自己更改编码 我在创建文件时没有找到任何方法可以更改编码, 所以我想知道是否有可能在我的应用程序的资源文件夹中插入一个编码为UTF-8的csv文件, 然后通过电子邮件发送此文件 所以我要问的是,这可能吗? 如果是这样,我该怎么做 我目前正在使用openCSV创建csv文件 字符串csv=android.

我的Csv文件有问题,在我的应用程序中,我想将所有数据库插入Csv文件并通过电子邮件发送。 除了一件事之外,每件事都很顺利——文件的编码不是UTF-8 因此,每次我通过电子邮件发送文件时,我必须自己更改编码

我在创建文件时没有找到任何方法可以更改编码, 所以我想知道是否有可能在我的应用程序的资源文件夹中插入一个编码为UTF-8的csv文件, 然后通过电子邮件发送此文件

所以我要问的是,这可能吗? 如果是这样,我该怎么做

我目前正在使用openCSV创建csv文件

字符串csv=android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
试一试{
文件myFile=新文件(csv+“/Data.csv”);
myFile.createNewFile();
CSVWriter writer=new-CSVWriter(new-FileWriter(myFile),',');
}

我删除了我们在搜索您问题的解决方案时交换的冗长评论

您必须在
CSVWriter
上使用不同的构造函数,然后才能指定文件编码。 在JVM启动时定义
文件。编码
也会有所帮助:

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

您的堆栈溢出问题已经有一个文档解决方案,其中显示了一个示例:

我搜索了很长时间,但没有找到答案。你有我能看到的例子吗?我没有在手机中读取csv文件,我只是在其中创建和写入,然后将其发送到电子邮件并在我的计算机中打开该文件。我不知道你在哪里找到答案,但我找不到任何改变编码的代码,也许我是个白痴,Idk):。你能给我一个你找到的答案的链接吗?好的,告诉我如果我是对的,这段代码创建了一个文件读取器,可以读取UTF-8编码的文件,所以当我想从csv文件中获取一行或其他内容时,我会获取字符串或UTF-8编码的行,并在我的代码中使用它或其他任何东西。。。如果这是代码所做的事情,它将不会有帮助。当我在我的计算机中打开文件时,默认编码不是UTF-8,每次我通过电子邮件发送文件时,我都必须更改编码(在我的计算机中)。如果您发送给我的代码与我所说的一样,那么它就不起作用了):我不知道为什么。。。。谢谢你的帮助,但它似乎不起作用…你给我的最后一个链接没有效果。。。我将尝试您发送的最后一个链接