首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >转换为ANSI

转换为ANSI
EN

Stack Overflow用户
提问于 2014-01-24 10:27:04
回答 1查看 967关注 0票数 0

我有个csv文件。我需要使用jsp在html表中显示csv文件内容。我已经使用开放的csv编写了所需的代码。是的,它成功地显示在html表中。但是一些神秘的字符被显示为“-?- 1 -?-”代替"- 1-“,在那里那些问号是没有必要的。

我尝试以以下方式将值转换为ansi,以消除神秘字符的输入:

代码语言:javascript
运行
复制
csvReader = new CSVReader(reader);
int rowCount = 1;
while ((line = csvReader.readNext()) != null) {
%>
<tr>
<td class="heading" width="30"><%=rowCount%></td>
<%
for (int i = 0; i < line.length; i++) {
    if (rowCount == 1) {
    %>
    <td class="ex-headding" width="120"><strong><%=line[i]%></strong></td>
    <%
    } else {
        //this is the code to convert into ansi
        String utf = line[i];  
        byte[] data = utf.getBytes("ASCII");  
        line[i] = new String(data);
    %>
    <td><%=line[i]%></td>
    <%
    }
}
%>  

但问题仍然存在。这是转换为ANSI的正确方式吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-24 12:35:59

可能你有类似的

代码语言:javascript
运行
复制
<%@page pageEncoding="ISO-8859-1"%>

这是官方拉丁语1。使用:

代码语言:javascript
运行
复制
<%@page pageEncoding="Windows-1252"%>

它是带有一些特殊字符的Windows拉丁文-1。所有浏览器都将ISO-8859-1解释为Windows1252(也是MacOSX、Linux),而HTML5甚至规定了这种方式。只有java是严格的。

因此,您可以保留HTML:

代码语言:javascript
运行
复制
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

当原始Unicode字符不能在输出字符集中表示时,就会给出问号。

如果角色仍然无法表示,请切换到"UTF-8“。这无疑是未来的动力,由多语种的世界,和目前的Unicode基础。

,因为这不是原因:检查CSV文件的编码。例如,使用JEdit。然后将编码添加到CSVReader构造函数中。

这确保了我们一开始就有正确的字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21330218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档