2013-12-05 2 views
0

Мне нужно написать код, чтобы вставить пространство в середине файла falt.
У меня есть текст, как показано ниже, каждая строка длина колонны должна быть такой жеВставьте пространство в Filereader

123 
123256 
123323 

выше строка должна выглядит

123--- 
234256 
987323 

После 123 нам нужно пространство. вы могли бы предложить, как это сделать.

Я загрузил файл в строку dr = file.ReadToEnd();

+0

Функция PadRight ?? –

+1

И чтение строки из оригинала, запись во временный файл, а затем последующее переименование было бы хорошо, особенно если файлы большие. –

ответ

0

Используйте строку split, чтобы разделить ваши линии при разрыве линии (либо \n, либо System.Environment.NewLine, в зависимости от ваших желаний). Перейдите по возвращенному массиву к Trim() каждой строке, затем используйте функцию PadRight, чтобы создать новую строку требуемой длины с нужными конечными символами. Затем используйте одну из многих функций записи IO для вывода в новый файл или перезапись существующего файла.

0

Что-то вроде

using(FileStream input = new FileStream(inputFileName,FileMode.Open,FileAccess.Read)) 
{ 
    TextReader reader = new StreamReader(input); 
    using (FileStream output = new FileStream(OutputFileName, FileMode.OpenOrCreate, FileAccess.Write)) 
    { 
    TextWriter writer = new StreamWriter(output); 
    string line; 
    while ((line = reader.ReadLine()) != null) 
    { 
     writer.WriteLine(line.PadRight(6,' ')); 
    } 
    } 
} 

Off верхней части моей головы этого, так что может быть глупо в нем.

Затем переименуйте outputFileName в inputFileName