在我的Android应用程序中,我想在运行时重命名文件名.我该怎么做?
这是我的代码:
String[] command = {" mv", "sun moon.jpg"," sun_moon,jpg"};
try
{
Process process = Runtime.getRuntime().exec(command);
}
catch (IOException e)
{
Toast.makeText(this, ""+e, Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
我也使用renameTo(File f)方法,但它不起作用.
我正在研究Android应用程序,其中我使用JNI作为本机c代码.我在Android 2.0版本和ndkr3上构建此应用程序,它工作正常.
现在,当我更改了android sdk 1.5版和api版本3时,我遇到了无法打开库libtest_demo.so的问题.
05-13 16:54:23.603: INFO/dalvikvm(1211): Unable to dlopen(/data/data/org.abc.test_demo/lib/libtest_demo.so): Cannot find library
Run Code Online (Sandbox Code Playgroud)
我把libtest_demo.so文件放在同一个地方/data/data/org.abc.test_demo/lib/libtest_demo.so但仍然出现同样的问题.
在我的java文件中,我称之为本机库,
System.loadLibrary("abc_jni");
System.loadLibrary("test_demo");
Run Code Online (Sandbox Code Playgroud)
从logcat我看到两个库使用相同的内存地址.
这是logcat输出
05-13 17:56:15.732: DEBUG/dalvikvm(9897): Trying to load lib /data/data/org.abc.test_demo/lib/libabc_jni.so 0x437317f8
05-13 17:56:15.732: DEBUG/dalvikvm(9897): Added shared lib /data/data/org.abc.test_demo/lib/libabc_jni.so 0x437317f8
05-13 17:56:15.742: DEBUG/dalvikvm(9897): Trying to load lib /data/data/org.abc.test_demo/lib/libtest_demo.so 0x437317f8
05-13 17:56:15.752: INFO/dalvikvm(9897): Unable to dlopen(/data/data/org.abc.test_demo/lib/libtest_demo.so): Cannot find library
Run Code Online (Sandbox Code Playgroud)