HtmlTextWriter - 包含空格的文件路径

时间:2013-04-15 10:38:24

标签: c# winforms htmltextwriter

我正在尝试使用HtmlTextWriter来创建一个html页面,这一切都正常,直到我尝试将图像创建到文件路径中包含空格的文件夹

C:\Documents and Settings....

似乎正在发生的事情是

m_htmlWriter.AddAttribute(HtmlTextWriterAttribute.Src, imageName);

将空格转换为%20 ,结果导致源的文件路径无效并导致我的web浏览器和已安装的互联网浏览器无法显示所述图像,而是显示破碎的图像图标/图像..

我尝试了多种不同的方法来实现这一点,包括

Uri.UnescapeDataString,包括imageName

前面的@符号

我还发现如果我从页面源代码复制链接(C:\Documents%20and%20Settings\...,那么windows无法找到该文件(预计会这样)

由于我受到限制,我无法使用HtmlAgilityPack。任何人都有任何想法?

1 个答案:

答案 0 :(得分:0)

只需添加一个布尔参数来告诉HtmlTextWriter类您不希望它编码: -

m_htmlWriter.AddAttribute(HtmlTextWriterAttribute.Src, imageName, false);

有两种类似的方法可供选择:

AddAttribute(HtmlTextWriterAttribute, String)
AddAttribute(HtmlTextWriterAttribute, String, Boolean)

使用第二个应该解决问题。