ディスクにHTMLファイルがある場合、実行時にString変数に一度にすべて読み込むにはどうすればよいですか?次に、その文字列変数に対して何らかの処理を行う必要があります。
このようないくつかのhtmlファイル:
<html>
<table cellspacing="0" cellpadding="0" rules="all" border="1" style="border-width:1px;border-style:solid;width:274px;border-collapse:collapse;">
<COLGROUP><col width=35px><col width=60px><col width=60px><col width=60px><col width=59px></COLGROUP>
<tr style="height:20px;">
<th style="background-color:#A9C4E9;"></th><th align="center" valign="middle" style="color:buttontext;background-color:#D3DCE9;">A</th><th align="center" valign="middle" style="color:buttontext;background-color:#D3DCE9;">B</th><th align="center" valign="middle" style="color:buttontext;background-color:#D3DCE9;">C</th><th align="center" valign="middle" style="color:buttontext;background-color:#D3DCE9;">D</th>
</tr><tr style="height:20px;">
<th align="center" valign="middle" style="color:buttontext;background-color:#E4ECF7;">1</th><td align="left" valign="top" style="color:windowtext;background-color:window;">Hi</td><td align="left" valign="top" style="color:windowtext;background-color:window;">Cell Two</td><td align="left" valign="top" style="color:windowtext;background-color:window;">Actually a longer text</td><td align="left" valign="top" style="color:windowtext;background-color:window;">Final Word</td>
</tr>
</table>
</html>
File.ReadAllText を使用して、ファイルの場所を引数として渡します。
ただし、実際の目標がhtmlの解析である場合は、 Html Agility Pack を使用することをお勧めします。
System.IO.File.ReadAllText(fileName)
を使用します
string html = File.ReadAllText(path);
これについてはすでにほとんど説明されていますが、以前のコードサンプルで問題が発生したため、1つ追加されました。
Dim strHTML as String = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath("~/folder/filename.html"))
File.ReadAllText(path_to_file)
を使用して読み取ります
どのような処理をしようとしていますか? XmlDocument doc = new XmlDocument();
の後にdoc.Load(filename)
を続けることができます。次に、XMLドキュメントをメモリで解析できます。
XmlDocumentの詳細については、こちらをご覧ください。
あなたはそれを簡単な方法で行うことができます:
string pathToHTMLFile = @"C:\temp\someFile.html";
string htmlString = File.ReadAllText(pathToHTMLFile);
または、FileStream/StreamReaderでストリーミングできます。
using (FileStream fs = File.Open(pathToHTMLFile, FileMode.Open, FileAccess.ReadWrite))
{
using (StreamReader sr = new StreamReader(fs))
{
htmlString = sr.ReadToEnd();
}
}
後者の方法では、他のユーザーにファイルの読み取り/書き込み操作を許可しながら、ファイルを開くことができます。 HTMLファイルが非常に大きいとは想像できませんが、最初の方法のように1つの大きなチャンクとしてキャプチャするのではなく、ファイルをストリーミングするという追加の利点があります。