Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.09.2004, 20:32
|
|||
|---|---|---|---|
|
|||
CSV import. Проблемс с датами. Я фигею дорогая редакция... |
|||
|
#18+
привет знатокам! исходная: есть обычный csv файл типа ER,07/09/2004,16/09/2004,SLD,871,37949,0.05575 при импорте данных: Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("ru-ru"); Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture; string FileName = folderUpload + "temp.csv"; myFile.PostedFile.SaveAs(FileName); string strConn = @"Driver={Microsoft Text Driver (*.txt; *.csv)};Extensions=asc,csv,tab,txt;Dbq=" + System.Configuration.ConfigurationSettings.AppSettings["folderUpload"].ToString(); OdbcConnection objCSV = new OdbcConnection(strConn); objCSV.Open(); OdbcCommand oCmd = new OdbcCommand("SELECT * FROM temp.csv", objCSV); OdbcDataReader dr = oCmd.ExecuteReader(); int i=0; while (dr.Read()) { получается что форматы дат "гуляют". например если даты в файле: 07/09/2004,16/09/2004 то при импорте они считываются как: 7/9/2004 00:00:00 - 9/16/2004 00:00:00 а если файл 13/09/2004,27/09/2004 то считывается как: 9/13/2004 00:00:00 - 9/27/2004 00:00:00 где логика? я пытался культуру выставлять перед импортом и ковертировать... даты все равно "гуляют". кроме работы с файлом как с обычным текстом выхода не вижу. буду признателен за хелп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.09.2004, 21:13
|
|||
|---|---|---|---|
CSV import. Проблемс с датами. Я фигею дорогая редакция... |
|||
|
#18+
установка культуры тут причем - ведь это БД (хотя и ISAM). и в этой БД (by default) принят американский стандарт MM/DD/YYYY если дата не вписывается в этот формат (т.е. MM от 1 до 12 и DD от 1 до 28,29,30,31 в зависимости от месяца и високосного года и это еще при условии, что год задан 4-мя цифрами), то пробуется DD/MM/YYYY и т.д. по "черт ногу сломит какому" алгоритму, но до первого срабатывания. 15/4/5 - не берусь даже предсказать рез-т --- переопределить формат хранения можно через schema.ini файл, параметр DateTimeFormat. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.09.2004, 22:40
|
|||
|---|---|---|---|
CSV import. Проблемс с датами. Я фигею дорогая редакция... |
|||
|
#18+
Ooops, был неправ (хотя сомнения и остались - для parse). Не американский формат используется по умолчанию, а формат из Regional Settings (Control Panel), причём короткий. MSDN... the Windows Control Panel short date picture and time options are used Specifying the File Format ---- но хрен редьки не слаще, в этом случае вообще полный out с переносимостью с компьютера на компьютер с разными установками. здесь уже без файла схемы не обойтись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2004, 09:59
|
|||
|---|---|---|---|
|
|||
CSV import. Проблемс с датами. Я фигею дорогая редакция... |
|||
|
#18+
благодарю за ответы. конечном итоге (после нескольких дней извращений) заюзал текст стрим и построчно прочитал. и никаких глюков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=20&mobile=1&tid=1438353]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
44ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 331ms |

| 0 / 0 |
