Классический ASP, контекст VBScript.
Множество статей, включая этот Microsoft , скажем, вы не можете использовать FileSystemObject для чтения файлов Unicode.
Я столкнулся с этой проблемой некоторое время назад, поэтому переключился на использование ADODB.Stream вместо примера ReadText здесь вместо использования FileSystemObject.OpenTextFile (который принимает окончательный вариант). параметр, указывающий, открывать ли файл как Unicode, но на самом деле не работает).
Тем не менее, ADODB.Stream приводит к огромной боли при попытке прочитать файл на файловом ресурсе UNC (проблема, связанная с разрешениями). Итак, исследуя это, я наткнулся на следующий подход, который работает а) с файлами Unicode и б) с общими файловыми ресурсами UNC:
dim fso, file, stream
set fso = Server.CreateObject("Scripting.FileSystemObject")
set file = fso.GetFile("\\SomeServer\Somefile.txt")
set stream = file.OpenAsTextStream(ForReading,-1) '-1 = unicode
Это использует FSO для чтения файла Unicode без каких-либо видимых проблем, поэтому я запутался во всех ссылках, включая MS, говоря, что вы не можете использовать FSO для чтения файлов Unicode.
Кто-нибудь еще использовал этот подход для чтения файлов Unicode? Есть ли какие-то скрытые ошибки, которые мне не хватает, или вы действительно можете читать файлы Unicode, используя FSO?