在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HarmonyOS應用開發—文件上傳問題的解決方式

鴻蒙時代 ? 來源:鴻蒙時代 ? 作者:鴻蒙時代 ? 2022-04-20 10:59 ? 次閱讀

在之前的分享中,曾經提到一個文件上傳的問題
/data/user/0/cn.jltf.neighbor/files/534.jpg: open failed: ENOENT (No such file)

該文件不存在。但實際上該文件存在并能顯示出來。后來發現是鴻蒙系統的權限問題,只能訪問私有目錄下的文件。

解決方法:將文件復制到私有目錄下,再進行訪問。

代碼如下:

HiLog.info(label,"私有目錄:"+this.getFilesDir());
HiLog.info(label,"緩存目錄:"+this.getCacheDir());
HiLog.info(label,"數據目錄:"+this.getDataDir());
HiLog.info(label,"外部目錄:"+this.getExternalCacheDir());
HiLog.info(label,"引用目錄:"+this.getPreferencesDir());
HiLog.info(label,"同步目錄:"+this.getDistributedDir());
HiLog.info(label,"應用目錄:"+this.getDir("",Context.MODE_PRIVATE));
File[]dataChildFiles=this.getDataDir().listFiles();
for(FiledataChildFile:dataChildFiles){
HiLog.info(label,"數據子目錄:"+dataChildFile);
}
File[]externalFiles=this.getExternalMediaDirs();
for(FileexternalFile:externalFiles){
HiLog.info(label,"外部Media目錄:"+externalFile);
}

try{
//該目錄和JSUI中的internal://cache/目錄是一個目錄
Filefile=newFile(this.getCacheDir()+"/111.jpg");
HiLog.info(label,"文件路徑:"+file);
if(file.exists())
{
HiLog.info(label,"文件已存在");
return;
}
HiLog.info(label,"文件不存在");
InputStreaminputStream=getContext().getResourceManager().getResource(ResourceTable.Media_icon);
ImageSource.SourceOptionssrcOpts=newImageSource.SourceOptions();
srcOpts.formatHint="image/jpeg";
ImageSourceimageSource=ImageSource.create(inputStream,srcOpts);


//設置圖片參數
ImageSource.DecodingOptionsdecodingOptions=newImageSource.DecodingOptions();
decodingOptions.desiredSize=newSize(200,200);
imageSource.createPixelmap(decodingOptions);
//該種方式直接訪問internal://app目錄//FileOutputStreamfos=newFileOutputStream("/data/user/0/com.example.abilitytransfertest/files//111.jpg");
FileOutputStreamfos=newFileOutputStream(this.getCacheDir()+"/111.jpg");


ImagePackerimagePacker=ImagePacker.create();
ImagePacker.PackingOptionspackingOptions=newImagePacker.PackingOptions();
packingOptions.format="image/jpeg";
packingOptions.quality=90;
booleanresult=imagePacker.initializePacking(fos,packingOptions);
if(result)
{
result=imagePacker.addImage(imageSource.createPixelmap(decodingOptions));
if(result){
longdataSize=imagePacker.finalizePacking();
HiLog.info(label,"文件大小:"+dataSize);
}
}

fos.flush();
fos.close();
if(file.exists())
{
HiLog.info(label,"文件已存在");
return;
}
}catch(IOException|NotExistExceptione){
HiLog.info(label,"文件保存出錯:"+e.getMessage());
e.printStackTrace();
}

Filefile=this.getCacheDir();
File[]files=file.listFiles();
for(Filefile1:files){
HiLog.info(label,"File目錄:"+file1);
}

審核編輯:符乾江
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 應用開發
    +關注

    關注

    0

    文章

    62

    瀏覽量

    9608
  • HarmonyOS
    +關注

    關注

    79

    文章

    2005

    瀏覽量

    31668
收藏 人收藏

    評論

    相關推薦

    鴻蒙原生應用元服務開發-Web上傳文件

    Web組件支持前端頁面選擇文件上傳功能,應用開發者可以使用onShowFileSelector()接口來處理前端頁面文件上傳的請求。 下面的
    發表于 05-08 11:17

    #硬聲創作季 #HarmonyOS HarmonyOS應用開發-06.3 分布式文件系統-1

    文件文件系統HarmonyOS
    水管工
    發布于 :2022年11月16日 12:00:52

    #硬聲創作季 #HarmonyOS HarmonyOS應用開發-06.3 分布式文件系統-2

    文件文件系統HarmonyOS
    水管工
    發布于 :2022年11月16日 12:01:12

    HarmonyOS應用開發-okhttp3.0快速集合文件上傳

    應用開發過程中經常需要進行文件上傳功能開發,通過okhttp3.0可以快速集合完成文件上傳的功能。代碼如下:OkHttpClient htt
    發表于 03-08 14:23

    HarmonyOS應用開發-圖片文件上傳錯誤交流

    開發過程中,遇到一個上傳文件時的錯誤,特地在此記錄一下。相關代碼:/** 圖片上傳* */public static void sendMultipart(String urlAdd
    發表于 03-25 11:06

    HarmonyOS應用開發-文件上傳問題的解決方式

    在之前的分享中,曾經提到一個文件上傳的問題/data/user/0/cn.jltf.neighbor/files/534.jpg: open failed: ENOENT (No such file
    發表于 04-20 15:27

    怎樣通過遠程連接方式控制云端真機對HarmonyOS應用進行測試呢

    通過遠程連接方式控制云端真機對HarmonyOS應用進行測試,包括HarmonyOS應用在遠程真機上的安裝、測試等,當前支持的真機設備包含TV、Lite Wearable設備、Phone和平板電腦
    發表于 05-24 14:45

    基于PHP大文件上傳的研究和設計

    基于PHP大文件上傳的研究和設計,感興趣的可以看看。
    發表于 02-22 18:15 ?6次下載

    基于Iframe內聯框架的異步文件上傳與刪除

    在Weh應用程序開發過程中,文件上傳功能是個很常用又非常重要的功能,它要處理的內容主要包括:如何將上傳文件
    發表于 11-11 10:20 ?5次下載
    基于Iframe內聯框架的異步<b class='flag-5'>文件</b><b class='flag-5'>上傳</b>與刪除

    如何在java上傳和下載文件

    文件上傳在web應用中非常普遍,要在jsp環境中實現文件上傳功能是非常容易的,因為網上有許多用java開發
    發表于 11-13 08:00 ?11次下載

    java Web如何實現文件上傳與下載

    文件上傳概述,實現web開發中的文件上傳功能,需完成如下二步操作: 在web頁面中添加上傳輸入
    發表于 03-06 11:03 ?7次下載
    java Web如何實現<b class='flag-5'>文件</b>的<b class='flag-5'>上傳</b>與下載

    HarmonyOS應用開發okhttp3.0快速集合文件上傳

    ? ? ? ? ?應用開發過程中經常需要進行文件上傳功能開發,通過okhttp3.0可以快速集合完成文件上傳的功能。 代碼如下: OkHtt
    的頭像 發表于 03-08 10:24 ?1847次閱讀

    HarmonyOS應用開發—圖片文件上傳錯誤交流

    開發過程中,遇到一個上傳文件時的錯誤,特地在此記錄一下。 相關代碼: /** 圖片上傳* */public static void sendMultipart(String urlA
    的頭像 發表于 03-25 10:27 ?1749次閱讀

    MarkDown文件插入圖片并上傳GitHub

    MarkDown文件插入圖片并上傳GitHub
    的頭像 發表于 01-12 17:02 ?1175次閱讀

    前端文件上傳的幾種交互造輪子

    可以用剪貼板功能讓自己的 cv 實現文件上傳,于是自己就整合了目前幾種文件上傳的交互方式,碼了一個支持 cv 的 vue3
    的頭像 發表于 07-04 10:39 ?621次閱讀
    主站蜘蛛池模板: 狠狠色丁香久久婷婷综 | 午夜黄色一级片 | 国产一区二区在线观看免费 | 国产一级特黄高清免费大片 | 色综合天天综合网国产成人 | 天堂资源站 | 亚洲伊人成综合成人网 | 男人天堂网址 | 日本在线一级 | 久久xxx | 日韩免费视频一区二区 | 未成人禁止视频高清在线观看 | 一级特黄牲大片免费视频 | 香蕉视频国产在线观看 | 亚洲热热久久九九精品 | 在线观看视频高清视频 | 男人天堂网www | 欧美性一区二区三区五区 | 日本色黄视频 | 又大又粗进出白浆直流动态图 | 人人爱人人插 | 夜天干天干啦天干天天爽 | 久久久久久久成人午夜精品福利 | 亚洲网站在线观看 | 男人性天堂 | 色成年激情久久综合 | 91大神成人偷拍在线观看 | 一级片在线免费观看 | 六月婷婷色 | 欧美一区二区三区大片 | 亚洲一区二区三区四区五区六区 | 欧美日韩a级a | 毛片.com| 35pao免费视频 | 亚洲黄网址 | 在线视频h | 2021av网站| 国产嫩草影院在线观看 | 性无码专区无码 | 久久亚洲精品国产亚洲老地址 | jinv在线视频 |