2017-02-16 4 views
0

Я пытался транслировать данные файла txt в текстовое поле, но он показывает мои данные как одно слово без пробелов. Как написать текстовое содержимое txt в текстовое поле и сохранить его форматирование? Существует код я пробовал:Отображать содержимое файла txt в текстовом поле asp.net или другом

private void WriteData() 
{ 
    if (File.Exists(Server.MapPath("App_Data/U3.txt"))) 
    { 
     TextBox1.Text = File.ReadAllText(Server.MapPath("App_Data/U3.txt")); 
    } 
    File.WriteAllText(Server.MapPath("App_Data/U3.txt"), TextBox1.Text); 
} 

Edit: видимо, оно не удалить пробелы, но новые линии ушли, и его все в одной строке Edit 2: хорошо сейчас им пытаются использовать ReadAllLines но как я сделать это заявление действует

TextBox1.Text = File.ReadAllLines(Server.MapPath("App_Data/U3.txt")); 
+0

Это не должно удалять пробелы! – BugFinder

+0

@BugFinder, вы правы, но не удаляет новые строки и записывает все в одном, вместо этого я должен использовать ReadAllLines? – zerociudo

+1

Почему вы помещаете его в 'textBox', почему бы вам не попробовать поместить его в' textArea' и проверить свой код. –

ответ

1

Сначала перейдите к свойствам и измените Textmode на Multi line, а затем попробуйте под кодом. Оно работает.

protected void Page_Load(object sender, EventArgs e) 
    { 
     string file = "test.txt"; 
     string[] str = null; 
     if (File.Exists(Server.MapPath(file))) 
     { 
      str = File.ReadAllLines(Server.MapPath(file)); 
     } 
     foreach (string s in str) 
     { 
      TextBox1.Text = TextBox1.Text +"\n" +s; 
     } 

    } 
0

может быть, вы можете попробовать заменить все символы новой строки в выходной файл <br/> тегов, например:

mystring.Replace(System.Environment.NewLine, "<br />"); 

пс. Я нашел ответ здесь: text in the textbox doesnt retain its format

Смежные вопросы