我遇到了以下问题:我是巴西人,在这里我们使用像'ç'或'ã'这样的奇怪字符。所以,我正在为网络编程,当我阅读文本文件并显示其内容时,它会替换'?'的奇怪字符。
编辑:
我有这段代码:
<script type="text/javascript">
$(getImages);
function getImages() {
$.getJSON("/home/ListImagesProducts", showImages);
}
function showImages(data) {
$("#directoryImages").append("<ul id = 'productImages'>");
for (i = 0; i < data.length; i++) {
var directories = data[i];
$("#directoryImages ul").append("<li><img src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</li>");
}
//$("#directoryImages").append("</ ul>");
}
'directories.DescriptionName'之前的'ççç'也显示为主要。我正在从记事本文件中读取文本。我已经把'UTF-8'。
如何显示从文件中读取的普通文本?
答案 0 :(得分:2)
您的文档需要 UTF-8 字符编码
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>My page</title>
</head>
<body>
<p>çãšđčćž</p>
</body>
</html>
如果您使用某些文本编辑器(如Notepad ++),请确保设置编码:
在没有BOM的情况下以UTF-8编码
此外,您的代码中也有一些错误。你搞砸了'
和"
而你没有结束</div>
src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</li>"
应该是:
src='../Content/images/Products/' + directories.ImageName + ' /><div class="description"> ççç ' + directories.DescriptionName + '</div></li>'
而不是在for循环中使用.append()
(这非常慢)创建一个字符串,在for loop
内填充它,然后只附加一次:
var ul = "<ul id='productImages'>";
for (i=0; i<data.length; i++) {
var directories = data[i];
ul += "<li><img src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</div></li>";
}
ul += "</ul>";
$("#directoryImages").append( ul );