文件应该存储在手机的什么地方?
2004-12-23 16:33
531 查看
文件应该存储在手机的什么地方?
我需要把一个文件存在手机里,pkg文件这样写的:
"/Symbian/6.1/Series60/epoc32/release/wins/UDEB/Z/SYSTEM/DATA/data.dat"-"!:/system/apps/test/data.DAT"
在模拟器中运行时,程序里读入绝对路径:
z://system//data//data.DAT
在手机里运行时,程序读入路径为:
e://system//apps//test//data.DAT
在模拟器上运行正常,安装在手机的卡上,运行不了,不知道为什么
这个路径可以写死也可以运行时获得:
方法一:
方法二:
Regards
Maxying
为了增强程序的可移植性,还是不要用绝对路径的好。我们可以在操作前获取当前设备的存储器路径。
例如:
根目录:
PathInfo::PhoneMemoryRootPath()
存储图片文件目录:
PathInfo::ImagesPath()
存储安装SIS文件目录:
PathInfo::InstallsPath()
存储声音文件目录:
PathInfo::SoundsPath()
如果想要定位MMC卡这种外加的存储器应该这样:
#include <PathInfo.h>
TFileName path = PathInfo::MemoryCardRootPath();
r60600
PathInfo这个类是在S60 2.0平台的,楼主的Symbian 6.1也就是S60 1.0平台用不了的!
Regards
Maxying
我需要把一个文件存在手机里,pkg文件这样写的:
"/Symbian/6.1/Series60/epoc32/release/wins/UDEB/Z/SYSTEM/DATA/data.dat"-"!:/system/apps/test/data.DAT"
在模拟器中运行时,程序里读入绝对路径:
z://system//data//data.DAT
在手机里运行时,程序读入路径为:
e://system//apps//test//data.DAT
在模拟器上运行正常,安装在手机的卡上,运行不了,不知道为什么
这个路径可以写死也可以运行时获得:
方法一:
code: _LIT(KBitmapFilename, "c://system//apps//test//xxx.mbm"); const TUint16 KMMCDriveLetter = 'e'; const TUint16 KROMDriveLetter = 'z'; // try 3 locations - application directory in C,E (memory card), and Z drive TFileName imageLocation(KBitmapFilename); TInt loadErr = iImageFlag->Load(imageLocation,useFullScreen); // not found on C, try E & Z if(loadErr != KErrNone) { imageLocation[0] = KMMCDriveLetter; loadErr = iImageFlag->Load(imageLocation,useFullScreen); if(loadErr != KErrNone) { imageLocation[0] = KROMDriveLetter; // in emulator, apps usually reside on z loadErr = iImageFlag->Load(imageLocation,useFullScreen); } }
方法二:
code: void GetFullPathName(TDes& aFileName) { // Get default drive and path TParse parse; TFileName appPath; TBuf<5> appDrive; parse.Set(CEikonEnv::Static()->EikAppUi()->Application()->AppFullName(), NULL, NULL); appPath.Copy(parse.DriveAndPath()); appDrive.Copy(parse.Drive()); // Parse the file name parse.Set(aFileName, NULL, NULL); if (parse.Drive().Length() == 0) { if (parse.Path().Length() == 0) { // Use default path and drive aFileName.Insert(0, appPath); } else { // Use default drive aFileName.Insert(0, appDrive); } } }
Regards
Maxying
为了增强程序的可移植性,还是不要用绝对路径的好。我们可以在操作前获取当前设备的存储器路径。
例如:
根目录:
PathInfo::PhoneMemoryRootPath()
存储图片文件目录:
PathInfo::ImagesPath()
存储安装SIS文件目录:
PathInfo::InstallsPath()
存储声音文件目录:
PathInfo::SoundsPath()
如果想要定位MMC卡这种外加的存储器应该这样:
#include <PathInfo.h>
TFileName path = PathInfo::MemoryCardRootPath();
r60600
PathInfo这个类是在S60 2.0平台的,楼主的Symbian 6.1也就是S60 1.0平台用不了的!
Regards
Maxying
相关文章推荐
- 最代码的上传的代码文件存储什么地方呢?
- 你的变量究竟存储在什么地方 && 全局内存
- rust.vim文件放到什么地方,vim才能正常识别Rust
- 浮点数在内存中的存储,头文件,名大小写是否区分,unsigned int在实现两数相加时应注意什么
- 手机内支持分享的应用 手机端已安装的apk文件 有什么分别呢
- Spark Shuffle六大问题 fetch操作、数据存储、文件个数、什么排序算法简单介绍
- JAVA中的各种东西存储在什么地方
- 块存储、文件存储、对象存储这三者的本质差别是什么?
- 应该买什么手机?----我的购机思路
- 引用 你的变量究竟存储在什么地方 && 全局内存
- 什么应该放在头文件?何为外连接?
- centOS(linux)系统中,html 文件应该放到 Tomcat 的什么位置?
- ubuntu中查看某个软件安装位置和配置文件在什么地方的方法
- Linux 中 rc.local、init.d、rc.x、init 这几个文件(夹)各有什么作用?启动执行的脚本应该均放在 rc.local 中吗?
- 手机放在什么地方
- 块存储、文件存储、对象存储这三者的本质差别是什么?
- 在web项目中把文件放在什么地方可以直接根据url访问
- android操作文件,保存在手机自带存储上和保存在SD卡上
- 块存储、对象存储和文件系统: 它们对容器而言意味着什么?
- Java 存储到什么地方