| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Быстрый string |
| Автор: MasterOfCode 29.8.2008, 09:04 | ||||
| есть 2 функции, одна работает с потоком, другая с строкой. Та которая работает со строкой очень медленная, та которая с потоком, работает в 10ки раз быстрее. строка:
поток:
мне нужно на выходе получить string[], но чтоб работало очень быстро, желательно как с потоком. Как? |
| Автор: nagg 29.8.2008, 09:13 |
| может стоит копать в сторону StringBuilder'a... |
| Автор: MasterOfCode 29.8.2008, 10:29 |
скорость не сильно отличается от первого варианта. :( и у StringBuildera как я понял размер ограниченый, а меня бывают файлы в 60 000 строк и больше, в один StringBuilder непоместятся возможно :( Разница времени: StringBuilder = 1364062500 List<string>(String[]) = 1279062500 видно что разница со StringBuilder работает даже медленнее.... |
| Автор: mihryak 29.8.2008, 13:28 | ||||
| во-первых, твой строковый код даже не скомпилируется, зачем обманываешь? во-вторых, покажи, как ты пробовал применить здесь билдер Добавлено через 9 минут и 13 секунд не разобрался с манипуляциями, но в любом случае замени
на
|
| Автор: MasterOfCode 29.8.2008, 13:55 | ||||
| Эм... Я набивал его от руки. Не буду заменять, т.к. мне нужно все значения выстраить в сторку через пробел! А так получится каждое значение в новой строке. вот код со StringBuilder:
Добавлено через 11 минут и 21 секунду Сорри, оказывается все тормозила моя невнимательность. У меня Footer был List<strinп[]>, а не List<List<string>. Поиск по индексу строки на порядок медленней чем по индексу контенера. и вот в этом месте
происходила утечка времени. Как только поменял StringBilder заработал очень быстро! |