android通过JNI用C/C++创建本地文件
16lz
2021-01-23
通过jni在本地创建文件
1.在android studio创建基本的jni工程,并且在APP界面成功显示"Hello from C++"
不会的可以看android studio使用jni
2.在native-lib.cpp文件中创建文件
为了方便,我们直接在stringFromJNI函数中创建文件
#include #include #include #include //方便用日志查看#define LOG_D(...) __android_log_print(ANDROID_LOG_DEBUG, "jni", __VA_ARGS__)//使用宏来调用日志库extern "C" JNIEXPORT jstring JNICALLJava_com_example_clientfile_MainActivity_stringFromJNI( JNIEnv *env, jobject /* this */) { std::string hello = "Hello from C++"; FILE* file = NULL; file = fopen("/data/data/com.example.clientfile/hello.txt","a"); //创建文件 if(file == NULL){ //容错 LOG_D("文件创建失败%s","222"); } fwrite("1111",3,1,file); //往文件中写文件 fclose(file); //关闭文件 return env->NewStringUTF(hello.c_str());}
其中非常需要注意的一点是创建文件的位置,必须是"/data/data/[project name]/test.txt",否则无法创建。
3.查看是否生成了该文件
点击View->Tool->Windows->Device File Explorer
在弹出的对话框中选择data->data->[你的项目名称]
没有我们想要创建的hello.txt文件
我们在我们的项目明上右击,选择Synchronize
出现了hello.txt
同时我们来看一下该文件的路径
在文件名上右击,选择Copy Path,然后随便找一个地方粘贴
结果是 /data/data/com.example.clientfile/hello.txt
所以,我们在该APP内创建的文件只能在这个目录先,当然我们也可以在项目名下先创建目录,在新建的目录下创建文件也可以。
最后打开hello.txt文件,看内容是否生成,右击选择open
显示111
至此,在android内使用jni创建本地文件已成功。
更多相关文章
- Android 定时器实现图片的变换
- android 开发之文件下载
- Android 第三方库使用实例——编写.so库文件
- android下的文件资源类型
- Android之文件操作和JUnit
- android studio 小技巧之 图片预览
- android studio加载so文件报错:dalvik.system.PathClassLoadero
- Eclipse+Android解决SDK下无doc文件夹问题 以及关联Android帮助
- android 入门之四【应用工程文件组成详解】