我已经在HTML5和JS(phonegap)中开发了一个应用程序,现在我必须从一个用delphi编写的旧桌面应用程序中读取一个文本文件。此文件是具有固定大小字符串的MS SQL导出,我必须导入到我的应用程序的SQlite。
此文字包含希腊字符,不以UTF编码,所以我读了带问号的钻石。
在我阅读内容之前,有没有办法以编程方式将此文本编码为UTF?
更改任何delphi代码都是forbiten。
这是我阅读文本文件的方式
var billjson = '{"posts" : [',
i,
line = 0,
Amountint,
Amountdec;
jQuery.get('Bill.txt',function(data){
alert(data.length);
line=0;
for (i = 1; i <= ((data.length)/156); i += 1) {
billjson += '{"Id" :' + '"' + data.substr((line+0), 10).trim() + '"' + ',';
billjson += '"Code" :' + '"' + data.substr((line+10), 5).trim() + '"' + ',';
billjson += '"Address" :' + '"' + data.substr((line+14), 40).trim() + '"' + ',';
billjson += '"Name" : ' + '"' + data.substr((line+54), 50).trim() + '"' + ',';
billjson += '"Description" : ' + '"' + data.substr((line+104), 8).trim() + '"' + ',';
billjson += '"EntrySeason" : ' + '"' + data.substr((line+112), 23).trim() + '"' + ',';
billjson += '"Period" : ' + '"' + data.substr((line+135), 11).trim() + '"' + ',';
Amountint = data.substr((line+146), 7).trim();
Amountdec = data.substr((line+153), 2).trim();
billjson += '"Revenue" : ' + '"' + Amountint + '.' + Amountdec + '"' + '}';
line = i * 156;
if (line == data.length)
{
billjson += ']';
}
else
{
billjson += ',';
}
}
if (line == 0)
{
billjson += ']';
}
billjson += "}";
var mybilljson = jQuery.parseJSON( billjson );
});
请咨询
答案 0 :(得分:0)
你必须让jquery知道它正在加载的文件中使用了什么编码。
jQuery.ajaxSetup({
'beforeSend' : function(xhr) {
xhr.overrideMimeType('text/plain; charset=iso-8859-7');
},
});