Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
阿拉伯语字母转换??在excel中使用java_Java_String_File_Stringbuilder_Outputstream - Fatal编程技术网

阿拉伯语字母转换??在excel中使用java

阿拉伯语字母转换??在excel中使用java,java,string,file,stringbuilder,outputstream,Java,String,File,Stringbuilder,Outputstream,我正在创建一个excel文件并 我有字符串生成器中的数据,它是阿拉伯语、英语和英语的混合体 当我在控制台中打印时,它显示正确,但当我将其写入文件时,阿拉伯字母变成未知字符 下面是我的代码 System.out.println("Arabic Stream1--"+sb.toString());//I can see arabic text in console System.out.println("Default Charset"+Charset.defaultCharset().name

我正在创建一个excel文件并 我有字符串生成器中的数据,它是阿拉伯语、英语和英语的混合体 当我在控制台中打印时,它显示正确,但当我将其写入文件时,阿拉伯字母变成未知字符

下面是我的代码

System.out.println("Arabic Stream1--"+sb.toString());//I can see arabic  text in console 
System.out.println("Default Charset"+Charset.defaultCharset().name());//UTF-8
outputStream.write(sb.toString().getBytes());

请提供任何帮助。提前谢谢

这是关于Excel和字体的,不是关于Java的。您在Excel中选择的字体无法显示该字符。使用这样的字体。

启动时,您可以尝试添加到JVM参数中:

-Dfile.encoding=UTF-8

只是为了确保它将强制您的整个应用程序使用UTF-8编码。

这是我使用上述代码得到的结果,但当我尝试使用excel创建的默认工具选项(oracle Adf)时,它显示良好,只是由于我的自定义,我在java中创建excel,这导致了一个问题:您如何使用StringBuilder在java中创建excel文件?正如下面链接中所述,我遵循的不是excel文件,这是一个选项卡分隔的文件,excel恰好知道如何打开。