4

我在添加带有重音字符的客户时遇到了麻烦。提交的字符没有像我预期的那样存储在 QB 中,当然,这会导致原始应用程序出现问题。这是客户添加请求和响应的示例。请注意名称的不同... División vs Divisiýn 后者是存储在 QuickBooks 中的内容。我使用的是 QB 在线版 6.0 SDK。

 #### REQUEST PORTION ####
 <?xml  version="1.0" encoding="ISO-8859-1" ?>
 <?qbxml version="6.0"?>
 <QBXML><QBXMLMsgsRq onError="continueOnError">
 <CustomerAddRq requestID="7770">
 <CustomerAdd><Name>Codelco División Ministro Hales</Name>

 #### RESPONSE PORTION ####
 <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
 <!DOCTYPE QBXML PUBLIC "-//INTUIT//DTD QBXML QBO 6.0//EN" "http://apps.quickbooks.com/dtds/qbxmlops60.dtd">
 ....
 <CustomerAddRs requestID="7770" statusCode="0" statusMessage="Status OK" statusSeverity="Info">
    <CustomerRet>
     ....
     <Name>Codelco Divisiýn Ministro Hales</Name>

谢谢

4

1 回答 1

3

您可以尝试两件事:

  • 如果你使用实体 ó 会发生什么?而不是 ó 直接?

  • 您是否尝试过使用 UTF-8 作为编码?在 XML 世界中,它被更频繁地使用,而 UTF-8 允许更多的字符,无论是重音还是其他字符。

服务器端可能发生的两件事,您可能无法确定:

  • 服务器是否配置为其他 ISO-8859 标准?(例如,从-4 开始对字符 243 有不同的字符)。

  • 您确定 ý 被保存在 QB 中,还是 y 后跟一个组合的 ´ 重音?

/年

于 2013-03-08T16:48:50.887 回答