在Node.js

时间:2017-07-05 09:00:06

标签: javascript json node.js encoding utf-8

我是JavaScript和Node.js的新手。所以,我有一个JSON文件,我想将此文件编码为UTF-8 JSON文件。 Node.js怎么可能?

源JSON文件是由另一个框架生成的,可能包含BOM,但是我需要一个没有BOM的UTF-8 JSON文件来处理它。

1 个答案:

答案 0 :(得分:4)

   static Session session = null;
    static Channel channel = null;


public Session sftpConnection(final String value, final String sftpUser, final String sftpHost, final int sftpPort,
        final String sftpPass) {
        System.out.println("preparing the host information for sftp.");
        try {
            JSch jsch = new JSch();
            this.session = jsch.getSession(sftpUser, sftpHost, sftpPort);
            if (value.equals("puttyServer")) {
                this.session.setProxy(new ProxySOCKS5("proxy need to add", Integer.parseInt("portnumber need to add")));
            }
            this.session.setPassword(sftpPass);
            java.util.Properties config = new java.util.Properties();
            config.put("StrictHostKeyChecking", "no");
            this.session.setConfig(config);
            this.session.connect();
            return this.session;
        } catch (Exception ex) {
            ex.printStackTrace();
            sftpConnection(value, sftpUser, sftpHost, sftpPort, sftpPass);
        }
        return null;
    }

这是如何运作的?

var fs = require('fs'); const detectCharacterEncoding = require('detect-character-encoding'); //npm install detect-character-encoding var buffer = fs.readFileSync('filename.txt'); var originalEncoding = detectCharacterEncoding(buffer); var file = fs.readFileSync('filename.txt', originalEncoding.encoding); fs.writeFileSync('filename.txt', file, 'UTF-8'); 读入文件时,它会将文件编码转换为JS使用的格式。

之后,当fs写入文件时,它会将JS存储的字符串转换为UTF-8并将其写入文件。