En general, en el entorno ASP, usamos FSO cuando ejecutamos operaciones en vivo y estáticas. Es un componente que se especializa en archivos operativos. Tiene solo tres atributos de codificación de FSO. Los valores predeterminados del sistema son Unicode y ASCII, y no hay UTF-8 que queramos. Por lo tanto, los archivos generados mediante el uso de componentes FSO en el sistema chino están en formato GB2312. Incluso si escribe Charset = "UTF-8" en la página web, es inútil.
Para generar un archivo en formato UTF-8, usamos ADODB.Stream en lugar de FSO para leer y escribir archivos UTF-8, porque ADODB.Stream tiene una propiedad Charset que le permite definir el tipo de codificación del archivo que se abrirá o escribirá. De esta manera, ADODB.stream no es solo un archivo que solo puede leer o escribir en UTF-8, sino que básicamente se puede operar cualquier formato de archivos. Por supuesto, lo que nos es más útil en la actualidad es escribir archivos en formato UTF-8.
La siguiente función puede implementar estas funciones:
FunctionWriteToFile (fileUrl, str, charset)
Setstm = createObject ("ADODB.Stream")
stm.type = 2
stm.mode = 3
stm.charset = charset
stm.open
stm.writeTextstrS
stm.SavetofileFileUrl, 2
stm.flush
stm. cerrar
Setstm = nada
Función final
Hay muchos elementos que pueden ser seleccionados por Charset. Puede encontrar lo que quiera aquí: el nombre de la pantalla CodePageCharset en chino e inglés. La función de esta función es básicamente la misma que la función FSO que usa para uso dinámico y estático, pero hay un atributo adicional que selecciona la codificación de caracteres. Por supuesto, también puede escribir este atributo directamente en la función, pero es mejor escribir de esta manera. Si desea usar otros elementos para convertirlos en otros formatos en el futuro, esta función aún se puede usar sin modificarlo.
Si solo desea implementar la conversión por lotes de los archivos existentes en formato UTF-8, puede probar:
Batch GB2312 a UTF-8, admite arrastre, implementación de VBS