Geralmente, no ambiente ASP, usamos o FSO ao executar operações ao vivo e estáticas. É um componente especializado em arquivos de operação. Possui apenas três atributos de codificação do FSO. Os padrões do sistema são Unicode e ASCII, e não há UTF-8 que queira. Portanto, os arquivos gerados usando componentes FSO no sistema chinês estão no formato GB2312. Mesmo se você escrever charset = "utf-8" na página da web, ela é inútil.
Para gerar um arquivo no formato UTF-8, usamos Adodb.stream em vez de FSO para ler e gravar arquivos UTF-8, porque o Adodb.stream possui uma propriedade Charset que permite definir o tipo de codificação do arquivo a ser aberto ou escrito. Dessa forma, o Adodb.stream não é apenas um arquivo que só pode ler ou gravar no UTF-8, mas basicamente qualquer formato de arquivos pode ser operado. Obviamente, o que é mais útil para nós atualmente é escrever arquivos no formato UTF-8.
A função a seguir pode implementar essas funções:
FunctionWritetoFile (Fileurl, STR, Charset)
Setstm = createObject ("adodb.stream")
STM.TYPE = 2
STM.Mode = 3
stm.charset = charset
STM.OPEN
STM.WRITETEXTSTR
STM.SAVETOFILEFILEURL, 2
stm.flush
stm.close
Setstm = nada
Função final
Existem muitos itens que podem ser selecionados pelo Charset. Você pode encontrar o que deseja aqui: o nome de exibição CodePageCharset em chinês e inglês. A função dessa função é basicamente a mesma da função FSO que você usa para uso dinâmico e estático, mas há um atributo adicional que seleciona a codificação do caractere. Obviamente, você também pode escrever esse atributo diretamente na função, mas é melhor escrever dessa maneira. Se você deseja usar outros itens para convertê -los em outros formatos no futuro, essa função ainda poderá ser usada sem modificá -la.
Se você deseja apenas implementar a conversão em lote dos arquivos existentes no formato UTF-8, você pode tentar:
Lote GB2312 para UTF-8, Suporte arrastando, implementação VBS