2016-01-26 2 views
-1

Я читаю файл по строкам.вычислить maxmimum индикатора выполнения для размера файла

В моем графическом интерфейсе у меня есть ProgressBar. Однако я хочу рассчитать Максимум ProgressBar как размер файла, а не строки, которые я читаю.

Как рассчитать значение ProgressBar? По размеру после каждых данных, которые я читаю?

Спасибо.

+0

'progress = alreadyDone * 100/everything' – Corak

ответ

3

Вы можете получить размер файла, получая его FileInfo.Length

FileInfo fi = FileSystem.GetFileInfo(filepath); 

Затем на основе этого, вы можете перевести его в ProgressBar.Value, сравнивая, сколько символов вы читали по сравнению с ним

int charRead = 0; 
foreach(string line in lines){ //get lines whichever way you want 
    charRead += line.Length + 1; //+1 is for the \n character you throw 
    double progress = (double)charRead/fi.Length; 
    //compare charRead with fi.Length 
} 
Смежные вопросы