如何在Java中用文件名创建中文字符的文件?我已经阅读了很多堆栈溢出答案,但找不到合适的解决方案。我写的代码如下:
private void writeFile(String fileContent) {
try{
File file=new File("C:/temp/你好.docx");
if(file.exists()){
file.delete();
}
file.createNewFile();
FileOutputStream fos = new FileOutputStream(file);
fos.write(fileContent);
fos.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
文件被写入输出目录,但文件名包含一些垃圾值。提前谢谢。
答案 0 :(得分:0)
我认为关键是我在评论中提到的。
您可以在源代码中将中文字符(或其他非ascii字符)作为文字。但是你应该确定两件事:
您传递给-encoding
的{{1}}参数应与文件的编码匹配。
例如,如果使用UTF-8,则javac命令应该类似于
javac
我刚刚尝试过类似的代码,它在我的机器上运行良好。