HarmonyOS 鸿蒙Next 只知道文件名称,不知道文件类型,怎么写入文件

发布于 1周前 作者 nodeper 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 只知道文件名称,不知道文件类型,怎么写入文件 只知道文件名称,不知道文件类型,怎么写入文件

2 回复

您看下fs.write是否能满足您的需求,相关使用可查看 链接 ,

import fs from '@ohos.file.fs';
@Entry
@Component
struct FileIndex {
  @State message: string = 'Hello World';
  createFile(filePath : string , buffer : ArrayBuffer | string){
    let cacheDir = this.cacheDir
    // 新建并打开文件
    let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
    // 写入一段内容至文件
    let writeLen = fs.writeSync(file.fd, buffer);
    console.info("The length of str is: " + writeLen);
    // 从文件读取一段内容
    let buf = new ArrayBuffer(1024);
    let readLen = fs.readSync(file.fd, buf, { offset: 0 });
    // 关闭文件
    fs.closeSync(file);
  }
  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button()
          .onClick(() =>{
            //需要写入的文件(空文件)
            //创建文件 需要读取的文件
            let filePath2 = this.filesDir + "/test11";
            //let filePath2 = getContext(this).filesDir + "/test11.txt";
            this.createFile(filePath2,"write in file")
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

更多关于HarmonyOS 鸿蒙Next 只知道文件名称,不知道文件类型,怎么写入文件的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中,如果你只知道文件的名称而不知道其类型,但需要进行文件写入操作,可以通过以下方式处理:

  1. 使用通用文件操作API:HarmonyOS提供了文件操作的API,这些API不依赖于具体的文件类型。你可以使用这些API打开文件,然后进行写入操作。通常,这些API会要求你指定文件的路径和打开模式(如读写模式)。

  2. 确定文件路径:确保你知道文件的完整路径,这包括文件名所在的目录。如果文件在应用的私有存储中,路径可能会相对简单;如果文件在公共存储或外部存储中,你需要确保应用有相应的读写权限。

  3. 使用文件流进行写入:一旦文件被成功打开,你可以使用文件流(FileStream)或其他类似的流对象进行写入操作。写入的内容可以是文本、二进制数据等,具体取决于你的需求。

  4. 处理异常:在进行文件操作时,始终要注意处理可能出现的异常,如文件不存在、权限不足等。

  5. 关闭文件:写入完成后,确保关闭文件以释放资源。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部