我正在尝试编辑c#中的.odc文件我觉得它很简单,因为它只是xml但是当我运行它并且它来加载文档xmlDoc.Load("THEFILE.odc")
时它给了我一个错误:
'Content-Type'是一个意外的令牌。预期的标记是'''或'''。第5行,第18位。 这就是我在谈论文档本身的第5行第18位:
<meta http-equiv=Content-Type content="text/x-ms-odc; charset=utf-8">
文件在下面。这是一个odc文件。我需要通过连接属性并更改ConnectionString。谢谢你的推荐
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/x-ms-odc; charset=utf-8">
<meta name=ProgId content=ODC.Table>
<meta name=SourceType content=OLEDB>
<title>Title</title>
<xml id=docprops><o:DocumentProperties
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns="http://www.w3.org/TR/REC-html40">
<odc:Connection odc:Type="OLEDB">
<odc:ConnectionString>"ConnectionString"</odc:ConnectionString>
<odc:CommandType>Table</odc:CommandType>
<odc:CommandText>"CommandText"</odc:CommandText>
<odc:SSOApplicationID>testReport</odc:SSOApplicationID>
<odc:CredentialsMethod>Stored</odc:CredentialsMethod>
</odc:Connection>
</odc:OfficeDataConnection>
</xml>
<style>
<!--
.ODCDataSource
{
behavior: url(dataconn.htc);
}
-->
</style>
</head>
还有更多文件本身,但上面是我试图编辑的xml。
谢谢
答案 0 :(得分:1)
您的.ODC文件看起来像XML,但事实并非如此。它不尊重某些XML规则。 例如,元标记未关闭。
<meta name=ProgId content=ODC.Table>
应该是
<meta name="ProgId" content="ODC.Table"/>
(注意引号和斜线添加)
对于Content-Type的第一个错误;它应该是:
<meta http-equiv="Content-Type" content="text/x-ms-odc; charset=utf-8"/>
(Content-Type需要用引号(或单引号)包围)。
我建议您使用HTML Agility Pack直接加载.ODC文件,或在加载之前使用一些清理工具。