VBS/WSH/JS - [решено] Как создать файл в кодировке UTF-8 с помощью VBScript?

Ответить
Аватара пользователя
Zeron

VBS/WSH/JS - [решено] Как создать файл в кодировке UTF-8 с помощью VBScript?

Сообщение Zeron »

Здравствуйте, вот так вот создаётся текстовый файлик на языке VBS:





Код:

Код: Выделить всё

Dim gg, gm
Set gg = CreateObject("Scripting.FileSystemObject")
Set gm = gg.CreateTextFile("text.txt", True)
gm.WriteLine("текст текст текст")
gm.WriteLine("текст текст текст")
gm.WriteLine("текст текст текст")
gm.Close

Подскажите, что нужно сделать чтобы этот файлик создавался в кодировке UTF-8?









Я нашёл скрипт который изменяет кодировку UTF-8 на 1251, но мне то нужно наоборот. А мозгов изменить скрипт не хватает((

Вот и он:



Код:

Код: Выделить всё

FileIn  = "in.txt"
FileOut = "out.txt"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(FileOut, 2, vbTrue)
strText = FileDecode(FileIn, "utf-8")
objFile.WriteLine(strText)
Function FileDecode (strFile, strCP)
   Set Stream = CreateObject("ADODB.Stream")
   With Stream
     .Type = 2
     .Mode = 3
     .CharSet = strCP
     .Open
     .LoadFromFile(strFile)
   End With
   FileDecode = Stream.Readtext()
   Stream.Close
End Function



Прошу помочь мне. Очень нужно.
Аватара пользователя
Zeron

Re: VBS/WSH/JS - [решено] Как создать файл в кодировке UTF-8 с помощью VBScript?

Сообщение Zeron »

Нашел решение:





Код:

Код: Выделить всё

Set st = CreateObject("ADODB.Stream")
st.Type=2
st.Open
st.Charset = "UTF-8"
st.WriteText("текст")
st.SaveToFile("1234.txt")



Но как оказалось мне нужен файл именно без BOM, а он создаётся с ним.

Помогите решить проблему.
Аватара пользователя
amel27

Re: VBS/WSH/JS - [решено] Как создать файл в кодировке UTF-8 с помощью VBScript?

Сообщение amel27 »

Код:

Код: Выделить всё

Set utf = CreateObject("ADODB.Stream")
utf.Type=2
utf.Charset = "UTF-8"
utf.Open
utf.WriteText "Это текст"
utf.Position=3
Set bin = CreateObject("ADODB.Stream")
bin.Type=1
bin.Open
utf.CopyTo bin
bin.SaveToFile("1234.txt")
Ответить

Вернуться в «Скриптовые языки администрирования Windows»