Что нового

как открыть файл в word в кодировке DOS(866)

Tiberium6

Новичок
Сообщения
51
Репутация
0
Код:
#include <Word.au3>
#include <Array.au3>
#include <File.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Date.au3>
#include <Excel.au3>


$oWord = _Word_Create(True)

$FileName="C:\1\1.txt"
$ConfirmConversions = False
$ReadOnly=false
$AddToRecentFiles=False
$PasswordDocument=""
$PasswordTemplate=""
$Revert=False
$WritePasswordDocument=""
$WritePasswordTemplate=""
$Format= $wdOpenFormatAuto
$XMLTransform=""
$Encoding = "866"

$oDocument = $oWord.Documents.Open($FileName,$ConfirmConversions,$ReadOnly,$AddToRecentFiles,$PasswordDocument,$PasswordTemplate,$Revert,$WritePasswordDocument,$WritePasswordTemplate,$Format,$XMLTransform,$Encoding = "866")

не могу никак открыть в dos кодировке файл,пытался вот так, переделал с этого
Код:
    ChangeFileOpenDirectory "C:\1\"
    Documents.Open FileName:="1.txt", _
        ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
        PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
        WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
        wdOpenFormatAuto, XMLTransform:="", Encoding:=866
в VBA работает и так
Код:
ChangeFileOpenDirectory "C:\1\"
    Documents.Open FileName:="1.txt", Encoding:=866
пробовал по разному, я думаю что Encoding:=866 не правильно указываю.
кто чем подскажет?
файл 1.txt вложил
 

Вложения

  • 1.txt
    23 байт · Просмотры: 5

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
247
С Вашим примером можно так :
Код:
#include <File.au3>
#include <Encoding.au3>

Local $aRecords
If Not _FileReadToArray(@ScriptDir & "\1.txt", $arecords) Then
    MsgBox(4096, "Ошибка", " Ошибка чтения файла в массив     Ошибка = " & @error)
    Exit
EndIf
For $i = 1 To $aRecords[0]
    MsgBox(4096, 'Строка:' & $i, _Encoding_866To1251($aRecords[$i]))
Next
и с Word
Код:
#include <MsgBoxConstants.au3>
#include <Word.au3>
#include <Encoding.au3>


Local $oWord = _Word_Create(False)
Local $sDocument = @ScriptDir & "/1.txt"
$oDoc=_Word_DocOpen($oWord, $sDocument, Default, Default, True)
MsgBox(0, "Document text", _Encoding_866To1251($oDoc.Range.Text))
_Word_Quit($oWord)
и на всякий случай, сама библиотека:
 

Вложения

  • Encoding.au3
    24 КБ · Просмотры: 6
Автор
T

Tiberium6

Новичок
Сообщения
51
Репутация
0
[quote author=ra4o[/quote]
а то что я делал, нельзя открыть стандартно, в кодировке DOS? не перекодируя.
просто в файле еще есть символы, которые составляют таблицу, и они не перекодируются
файл фложил
 

Вложения

  • 1.txt
    356 байт · Просмотры: 12
A

Alofa

Гость
Это что за документ такой у вас во вложениях, в предыдущем сообщении? Даже Shtirlitz не берет. :blink:
Чем сами-то открываете? Чем создавали?
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
247
Alofa,
Это что за документ такой у вас во вложениях
Откройте его в Word в кодировке MS-DOS. Это для примера автор показал значки из которых формирует таблицы.
 
Верх