替換HTML文件內容的一部分時,String.Replace似乎無法正常工作。例如,String.Replace將</body></html>
替換爲blah blah blah </body></html> html>
- 注意,第二個HTML結束標記未正確關閉,因此在用戶在瀏覽器中呈現頁面時顯示此標記。c#替換文件內的字符串
任何人都知道爲什麼它不按預期工作?
StreamReader sr = fi.OpenText;
String fileContents = sr.ReadToEnd();
sr.close();
fileContents = fileContents.Replace("<body>", "<body onload='jsFx();' />");
fileContents = fileContents.Replace("</body>","blah blah blah </body>");
StreamWriter sw = new StreamWriter(fi.OpenWrite());
sw.WriteLine(contents);
sw.close();
你能舉一個你的源文件的例子嗎?您提交的代碼*應該*如您所描述的那樣工作。我沒有看到任何理由,你會得到一個額外的`html>`位...... – Nate 2010-12-02 21:01:45
有沒有機會,無關的標籤已經在輸入文件中?另外我注意到在代碼示例中,您有一個自動封閉的身體標記,是嗎? – MrEyes 2010-12-02 21:05:32