866 в 1251
☑
0
kap
13.02.08
✎
09:56
Привет. Вопрос такой: Есть FoxPro 2.6 DOS он генерит DBF-ы с кодировкой 866. Нужно эти фалы перекодировать в 1251. Подскажите какую нибудь прору, желательно чтоб в пакетном режиме пахала. или раскажите что еще сделать можно. Очень горит.
1
Дуб
13.02.08
✎
10:01
(0) Я б попробовал из V8 прочитать (или из C#) и построить новые (требуемые) файлы.
2
kap
13.02.08
✎
10:02
нужно просто перекодировать
3
Череп
13.02.08
✎
10:09
man iconv
4
kap
13.02.08
✎
10:12
(3) это что?
5
Противный
13.02.08
✎
10:21
(0) сам фохпро прекрасно с этим справляется... ЗЫ: мыл оставь кину прогу почти готовую ;)
6
kap
13.02.08
✎
10:23
(5) slivkanich@gmail.com
7
Противный
13.02.08
✎
10:32
(6) ушло, на копии для начала потренируйся, а то потом базу можешь и не восстановить ;) ЗЫ: работает только с символьными полями...
8
smaharbA
13.02.08
✎
10:45
Учитесь пользоваться тем, что у вас есть...
set s = CreateObject("Adodb.Stream")
s.Type = 2
s.Mode= 3
s.charset="cp866"
s.Open()
s.loadfromfile(WScript.Arguments.item(0))
a=s.readtext
s.position=0
s.charset="windows-1251"
s.WriteText(a)
call s.SaveToFile(WScript.Arguments.item(0) & ".0",2)
s.Close()
Правильно еще поменять 30-й байт (если считать с 0 то 29-й) на 0х57
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.