0

blogPostTextBox というテキスト ボックスと、blogMessage.txt というファイルがあります。

この blogMessage.txt には、次の 3 つのテキストが含まれています。

  • メッセージ1
  • メッセージ2
  • メッセージ3

その txt ファイルからデータを読み取り、for ループまたは while ループを使用して blogPostTextBox にデータを表示したいと考えています。また、各メッセージが blogPostsTextBox の別の行に表示されるように、各メッセージの最後に System.Environment.NewLine を使用する必要があります。

public partial class _Default : System.Web.UI.Page
{

    protected void Page_Load(object sender, EventArgs e)
    {
        blogPostsTextBox.Text = "";
        string blogMessage = File.ReadAllText(Server.MapPath("~") + 
                                 "/App_Data/blogMessages.txt");
    }
}

コードを継続して機能させるにはどうすればよいですか?..ありがとうございます!

4

1 に答える 1

5
string path = Server.MapPath("~") + "/App_Data/blogMessages.txt";
string blogMessage = String.Join(Environment.NewLine, File.ReadLines(path));
blogPostTextBox.Text = blogMessage;

File.ReadLinesファイルからの行を返しIEnumerable<string>ます (つまり、3 つのメッセージがあります)。次に、行を連結しますString.Join-テキストファイルで見つかった各行の後に新しい行を追加します。

ところで、ファイルのコンテンツをテキストボックスに単純に割り当てることができないのはなぜですか?

blogPostTextBox.Text = File.ReadAllText(path);

UPDATE (ループあり)

string path = Server.MapPath("~") + "/App_Data/blogMessages.txt";
StringBuilder builder = new StringBuilder();

foreach(var line in File.ReadLines(path))    
    builder.AppendLine(line);

blogPostTextBox.Text = builder.ToString();
于 2013-10-03T11:21:50.577 に答える