收藏
回答

FileSystemManager.readFileSync读取内容不对?

我使用wx.chooseMessageFile选择了文件,返回的文件大小是2710,返回了临时文件路径,然后我读取这个文件,发现读取的文件大小不一样,是我本地用户文件的大小。

下面是代码:

static loadFromFile(filePath) {
        try {
            console.log('从文件中加载,',filePath);
            const fs = wx.getFileSystemManager();
            
            // 检查文件是否存在
            try {
                fs.accessSync(filePath);
            } catch (accessError) {
                console.error('文件不存在:', filePath);
                throw new Error(`文件不存在: ${filePath}`);
            }
    
            // 获取文件信息,包括大小和时间
            const fileInfo = fs.statSync(filePath);
            console.log(`文件路径: ${filePath}, 文件大小: ${fileInfo.size}, 修改时间: ${fileInfo.lastModifiedTime}`);
    
            const fileContent = fs.readFileSync(filePath, 'utf8');
            console.log('文件内容:', fileContent);
    
            return JSON.parse(fileContent);
    
        } catch (error) {
            console.error('文件加载失败:', error);
            throw new Error(`文件加载失败: ${error.message}`);
        }
    }

下面是截图:

网上的答案是说缓存的问题。但是我不知道这个该怎么修改?因为我读取的路径就是选择文件后返回的路径,但是读取到的内容是我本地用户文件的内容。这是Bug?还是我代码的问题?

回答关注问题邀请回答
收藏

1 个回答

  • 智能回答 智能回答 本次回答由AI生成
    11-28
    有用
登录 后发表内容