打印系统提示构造xml数据出错打印失败

打印系统提示构造xml数据出错打印失败,第1张

1、检查c:\windows\文件夹下,有没有Temp文件夹,如果没有,则需要新建一个

2、桌面云雀图标->鼠标右键->以管理员权限运行

3、如果还不行,那么一般你是win8系统,你再看看c:\windows\Temp 文件夹->鼠标右键->属性->安全 ,user/(你的windows用户名) 是不是没有‘修改’‘写入’两个权限,如果没有,都改成有。然后再试试云雀打印。

如果win7,win8系统遇到不能修改文件夹权限,请看下面的教程:

默认情况下,系统文件管理员(Adminitrators)只有读取和读取执行的权限,没有完全控制的权限,因此是没有办法修改的。只有TrustedInstaller才有完全控制的权限。因此需要将Adminitrators设置为完全控制的权限。

2、改文件的所有者

要将Adminitrators设置为完全控制的权限首先需要修改该文件的所有者。

打开文件高级安全设置,可以看到,默认情况下文件所有者为TrustedInstaller,需要修改为当前用户。

3、选择当前用户为所有者并确定,这样文件的所有者就变成了当前用户了。注意:需要重新打开文件属性才能生效。

4、修改角色的控制权限,获得文件所有者权限后,就可以对文件赋予相应的控制权限了(此处设置Adminitrators为完全控制权限)。重新打开文件安全属性,点击编辑

5、对Adminitrators的权限进行设置,勾选完全控制,确定即可。

编码问题,function characterData改成如下

function characterData($parser_instance, $xml_data)

{

global $name,$position;

$xml_data=iconv("utf-8","gb2312",$xml_data);//转换成gb2312

if($position)

echo $xml_data"<br>";

if($name)

echo $xml_data"<br>";

}

显示的那个页面也要有charset=gb2312

跟踪问题所在:

1、查询一下数据库,判断在数据库中的时候,是否是已经存在了乱码。

2、在读取到Java的时候,你用SystemOut输出一下,判断这个时候,是否是乱码。

3、写入到xml文件的时候,XML中是否是乱码。

如果是1种情况出现乱码,则是写入数据库的时候出现乱码,需要更改写入程序的代码。

如果是2种情况出现乱码,则是读取Oracle的字符集出现错误,设置读取的字符集。

如果是3种情况出现乱码,则是在Java类中写入的时候,设置字符集,查看数据库字符集,设置为UTF-8、或者是GBK字符集。

希望对你有帮助。

产生原因是xml文件中包含低位非打印字符造成的

处理方法:在产生xml文件的时候,过滤低位非打印字符

public static string ReplaceLowOrderASCIICharacters(string tmp)

{

StringBuilder info = new StringBuilder();

foreach (char cc in tmp)

{

int ss = (int)cc;

if (((ss >= 0) && (ss <= 8)) || ((ss >= 11) && (ss <= 12)) || ((ss >= 14) && (ss <= 32)))

infoAppendFormat(" ", ss);//{0:X};

else infoAppend(cc);

}

return infoToString();

}

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 打印系统提示构造xml数据出错打印失败

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情