HarmonyOS 走文件夹获取的图片怎么查看他的图片大小(比如10M,50KB这种)

是从文件夹中获取的图片。获取到的图片有宽高等信息,但是没有图片大小的信息。这种情况下怎么得到图片的大小呢?

HarmonyOS
2024-12-25 15:32:19
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

参考下这个demo,用fs读取文件大小,按1000换算可以拿到文件的大小:

import camera from '@ohos.multimedia.camera';
import common from '@ohos.app.ability.common';
import { BusinessError } from '@ohos.base';
import fileuri from '@ohos.file.fileuri';
import fs from '@ohos.file.fs';
import picker from '@ohos.file.picker';
import photoAccessHelper from '@ohos.file.photoAccessHelper';
import buffer from '@ohos.buffer';

async function get() {
  const photoSelectOptions = new photoAccessHelper.PhotoSelectOptions();
  photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE; // 过滤选择媒体文件类型为IMAGE
  photoSelectOptions.maxSelectNumber = 5; // 选择媒体文件的最大数目
  let uris: Array<string> = [];
  const photoViewPicker = new photoAccessHelper.PhotoViewPicker();
  photoViewPicker.select(photoSelectOptions).then((photoSelectResult: photoAccessHelper.PhotoSelectResult) => {
    uris = photoSelectResult.photoUris;
    console.info('photoViewPicker.select to file succeed and uris are:' + uris);
    let file = fs.openSync(uris[0], fs.OpenMode.READ_WRITE);
    fs.stat(file.fd).then((stat: fs.Stat) => {
      console.info("lstat succeed, the size of file is " + stat.size);
    }).catch((err: BusinessError) => {
      console.error("lstat failed with error message: " + err.message + ", error code: " + err.code);
    });
  }).catch((err: BusinessError) => {
    console.error(`Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`);
  })
}

@Entry
@Component
export struct Index {
  build() {
    Column() {
      Button('选择并保存').onClick(() => {
        get()
      })
    }
  }
}
分享
微博
QQ
微信
回复
2024-12-25 18:04:42
相关问题
HarmonyOS 怎么获取图片大小
111浏览 • 1回复 待解决
HarmonyOS 获取手机图片文件夹
532浏览 • 0回复 待解决
HarmonyOS 图片文件夹获取封面图coverUri
548浏览 • 1回复 待解决
有谁知道如何获取文件夹大小
1461浏览 • 1回复 待解决
HarmonyOS 如何获取图片是多少kb
263浏览 • 1回复 待解决
HarmonyOS 相册选择后压缩图片大小
142浏览 • 1回复 待解决
HarmonyOS marker无设置图片大小问题
137浏览 • 1回复 待解决
单个文件夹空间统计
1044浏览 • 1回复 待解决