|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
Всем привет, Проблема в файле dbf. Данные в DOS кодировке, нужно преобразовать в WIN 1251. Нашел код, который импортирует данные из DBF в DataGrid. А как же перевести его в нужный формат незнаю. Option Explicit Dim cnnD As New ADOdb.Connection Dim rstD As New ADOdb.Recordset Private Sub cmdConnect_Click() Dim strSQL As String cnnD.CursorLocation = adUseClient cnnD.Open "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & App.Path & ";UseProcForPrepare=No" strSQL = "SELECT * FROM test.dbf" rstD.Open strSQL, cnnD Set dtgDbf.DataSource = rstD End Sub Private Sub Form_Unload(Cancel As Integer) If cnnD.State = 1 Then cnnD.Close Set cnnD = Nothing End If If rstD.State = 1 Then rstD.Close Set rstD = Nothing End If End Sub Вот форма, при нажатии на "Загрузить данные" они загрузились в таблицу, при нажатии на "Конвертировать", данные в текущей таблице меняют кодировку на WIN (или можно другой способ, какой вы предложите мне главное результат) и создается новый файл DBF с правильной кодировкой. Никогда с dbf не работал, это дебют, поэтому объясните как можно понятнее)) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 22:15 |
|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
Bobax012Всем привет, Проблема в файле dbf. Данные в DOS кодировке, нужно преобразовать в WIN 1251. Нашел код, который импортирует данные из DBF в DataGrid. А как же перевести его в нужный формат незнаю. Option Explicit Dim cnnD As New ADOdb.Connection Dim rstD As New ADOdb.Recordset Private Sub cmdConnect_Click() Dim strSQL As String cnnD.CursorLocation = adUseClient cnnD.Open "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & App.Path & ";UseProcForPrepare=No" strSQL = "SELECT * FROM test.dbf" rstD.Open strSQL, cnnD Set dtgDbf.DataSource = rstD End Sub Private Sub Form_Unload(Cancel As Integer) If cnnD.State = 1 Then cnnD.Close Set cnnD = Nothing End If If rstD.State = 1 Then rstD.Close Set rstD = Nothing End If End Sub Вот форма, при нажатии на "Загрузить данные" они загрузились в таблицу, при нажатии на "Конвертировать", данные в текущей таблице меняют кодировку на WIN (или можно другой способ, какой вы предложите мне главное результат) и создается новый файл DBF с правильной кодировкой. Никогда с dbf не работал, это дебют, поэтому объясните как можно понятнее)) Сорри не тот скрин) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 22:18 |
|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
Bobax012, че нашел в моем древнем проекте. recode -> это кажется DOS -> WIN recodemin -то же самое с какой-то спецификой decode -> WIN ->DOS Ну, по крайней мере это мне в 2000-м году позволяло резво отображать данные в Win-проге из Dos-txt-файла, а потом туда же и сохранять в "родной" по тем временам DOS-кодировке. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 03:14 |
|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
по-моему можно указать кодировку в строке подключения те 866 и все будет как надо codepage=866; cp=866; или еще как-то вообщем поискать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 13:17 |
|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
А почему нужно использовать VB? Если уж вам нужно из DBF получить DBF, то и пользуйте, например, VFP... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 13:25 |
|
Конвертация DBF файла от начала до конца
|
|||
---|---|---|---|
#18+
Дмитрий77, Спасибо, но почему-то не получается перекодировать. Если текст в текстбоксе, то все проходит нормально, конвертация успешшна. А вот как дело касается загрузки самого DBF файла, так это не срабатывает( ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 08:48 |
|
|
start [/forum/topic.php?fid=60&msg=37828518&tid=2157715]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 305ms |
total: | 438ms |
0 / 0 |