Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.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
Java 如何在html中呈现特殊字符_Java_Html_Character Encoding_Inputstream - Fatal编程技术网

Java 如何在html中呈现特殊字符

Java 如何在html中呈现特殊字符,java,html,character-encoding,inputstream,Java,Html,Character Encoding,Inputstream,Am从资源文件中读取html文本作为 InputStream fstream = this.getClass().getClassLoader() .getResourceAsStream(filename); myString = IOUtils.toString(fstream, "UTF-8"); 但是如果html包含特殊字符 McDonald's 它将其转换为麦当劳,如果我用apos替换,,我可以解决它,但还有其他方法吗。是不是有什么问题??因为替换每一个字符是非常繁

Am从资源文件中读取html文本作为

InputStream fstream = this.getClass().getClassLoader()
        .getResourceAsStream(filename);
myString = IOUtils.toString(fstream, "UTF-8");
但是如果html包含特殊字符

McDonald's
它将其转换为麦当劳,如果我用apos替换
,我可以解决它,但还有其他方法吗。是不是有什么问题??因为替换每一个字符是非常繁琐的,因为我的文件中包含数千个特殊字符


谢谢,

尝试不同的编码。可能是
Cp1252
ISO-8859-1
。您可以在(使用首选MIME名称)或查看中找到更多字符编码。

使用此utf8元标记intead如果您的站点使用多种语言的英语,您必须使用utf8

 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">


您的文件可能没有用UTF-8编码。使用适当的编码读取文件,一切都应该正常。@JBNizet-我是否遗漏了什么,或者这不是IOUtils.toString(fstream,“UTF-8”)?谢谢!:)@JBNizet:myString=IOUtils.toString(fstream,“UTF-8”),我已经用过了。你所说的适当编码是什么意思?世界上的每个文件都不是用UTF8编码的。如果您尝试使用UTF-8对ISO-8859-1编码的文件进行解码,则无法工作。用于读取文件的编码必须与用于创建文件的编码相同。这就像用你自己的钥匙打开邻居的门。它不起作用。你需要邻居的钥匙。不,这并不意味着他们是用UTF-8编码的。这意味着它们应该用UTF-8编码。如果文件的创建者不了解编码是什么,他完全可以用ISO-8859-1编码文件,并在文件中添加此元部分。也许他只是从某个地方复制粘贴了它,甚至不知道它的意思。询问文件的创建者他是如何创建文件的。Cp1252是最可能的编码,但其推荐名称为windows-1252。如果失败,尝试ISO-8859-1没有意义(与windows-1252相同,只是有些可打印字符被控制字符替代)。一个更好的尝试是windows-1251,但也有很多可能性——关于文件来源的信息可能对猜测有很大帮助。你可能可以在一个好的编辑器中打开一个文件,比如记事本++,然后在那里尝试不同的编码。如果没有指定
-Dfile.encoding
,我会在我的计算机上得到
Cp1252
。但我通常使用UTF-8。是的,但我需要一些既能在英语中使用,又能在日语、阿拉伯语中使用的通用语言