Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поточное чтение данных из файла 
:(
    Опции темы
Anttt
Дата 4.10.2007, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 4.10.2007

Репутация: нет
Всего: нет



уважаемые коллеги-программисты. я прошу у Вас помощи в решении следующей задачи:
В текстовом файле дан набор данных следующего вида:

djfkri583ht93jt5oeh57sngit02tf,cyrgebvr74gfbvjdl
fkdrktj3bk4tj34k3jb4fh3fk4jfvbkfh34hf3v4kfhv4k34
f3kj4fb3k4hbf3kh4v3i4hvfjh3bvfjh34vfj4hvfjh34fvj
4fb3k4hfb34hfvj34hfvjhfvj34hfvj34hfv3jh4fvj3hhhh

Необходимо считывать данные посимвольно. в начале первые 5 (к примеру) символов, фиксировать их и выводить в поле таблицы
базы данных sql. После следующие 8 символов, фиксировать их и выводить в следующее поле таблицы и так далее.
Я никогда не сталкивался с потоковым чтением в C#, поэтому мне был бы интересен (и крайне полезен) сам код.

На самом деле надор данных колосального размера. 
считываются блоки данных этого набора и записываются в поля класса (string и int - при конвертации из string), 
после чего из этих полей данные по sql запросу должны записываться в таблицу по опрделенному полю. 
Мне необходимо посмотреть механизм чтения блоков данных РАЗНОЙ длинны из этого набора, запись в поле класса и 
дальнейшую запись из этого поля в таблицу. Буду очень рад и признателен любой помощи!
PM MAIL   Вверх
Experimenter
Дата 5.10.2007, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 8
Всего: 17



"А здесь смотрели?" внизу страницы видел?
запись в файл, чтение из файла в .NET
Код

char[] pieceOfData = new char[5];
FileStream fs = new FileStream("myfile.txt", FileMode.Open);
StreamReader sr = new StreamReader(fs);
int streamPos = sr.ReadBlock(pieceOfData, 0, 5); //считывает первые 5 байт, возвращает кол-во считанных байт
classStringField = new string(pieceOfData); //где classStringField - поле string твоего класса
sr.Close();

поправьте меня, если что, т.к. писал по памяти.

Это сообщение отредактировал(а) Experimenter - 5.10.2007, 11:10


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
mr.DUDA
Дата 5.10.2007, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



В общем, если файл текстовый - пойдёт и StreamReader; для бинарных данных нужен BinaryReader; в крайнем случае можно поюзать FileStream напрямую.


--------------------
user posted image
PM MAIL WWW   Вверх
Anttt
Дата 6.10.2007, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 4.10.2007

Репутация: нет
Всего: нет



спасибо! попробую сегодня)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0706 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.