① 读取android中assets中的txt文档。乱码怎么办
一般为两种编码格式
GBK或者UTF8。乱码是因为你项目的编码与.txt中的编码不同
Result
=
new
String(Result.getBytes("GBK"),
"ISO_8859_1");
你可以参考上面这个函数,对内容做编码转换。
② android studio引用assets文件夹里的东西路径怎么写
1.默认Android Studio的assets文件夹路径:src/main/assets,在assets文件夹创建teachcourse.xml文件,引用该文件的写法:
123456InputStream is = null;AssetManager manager = getAssets();try { is = manager.open("teachcourse.xml");} catch (Exception e) { e.printStackTrace();}
2.直接写上assets文件夹内文件的名称,使用AssetsManager管理器打开,获取输入流,最后解析里面的内容
③ android怎么获取assets存放到手机内存
1 在设置-应用程序-管理应用程序-点击要移动的应用程序,然后会有移动到储存卡或者移动到手机内存的选项,或者在安装软件的时候直接选择安装到内存卡里,如果你的手机目前没安装时选择的功能,你可以刷机解决 2 你可以安装360手机卫士到手机上,然后进入360手机卫士,选择程序管理-软件搬家 然后移动你想要移动的软件就可以了 提醒楼主 有些软件最好是放到手机里的,因为只有放到手机里才可以应用该软件的窗口小部件或者小工具什么的,比如天气软件 墨迹天气,天气通等,你想在手机桌面添加天气时钟,就得把该软件安装到手机内存里才行 楼主不明白可以继续追问,如果觉得可以,请采纳为满意回答
④ android工程中assets文件夹是干什么用的
这里面可以放一些文件,这些文件在打包生成apk的时候不会被编译,以文件原有的方式来保存,可以通过AssetManager来操作这些文件。详细的可以网络一下,说的肯定比我说的详细。
⑤ Android 怎样在应用程序中向文件里写入数据
Android 怎样在应用程序中向文件里写入数据?在AndroidManifest.xml中添加, <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />,解决!
另外了解一下android的数据存储方式:文件流的读取,SQLite,Content Provider以及Preference.。 注:resource和assets中的文件用户方面是只可以读取不能够进行写的操作的。
Content Provider作为程序之间唯一共享数据途径,用在这里不是很合适。所以,
第一种方式,使用FileInputStream,FileOutputStreami类实现文件I/O操作,直接往手机中存储数据。
第二种方式,使用SQLite,通过SQLiteDatabase类中方法操作数据。
第三种方式,Preference用于存储简单数据类型的数据,一些设置信息的保存。个人认为用在这里最合适。 它利用键值对存储的。例:
存储:SharedPreferences.Editor editor =sp.edit();
editor.putString(KEY_TEXT,"yonghu");
editor.commit();
获取 :sp =getPreferences(MODE_PRIVATE);
String result =sp.getString(KEY_TEXT,null)
Android保存数据几种常用方法解析
它应用于手机中能够帮助我们实现许多需求。比如今天为大家介绍的Android保存数据,就是其中一个比较重要的操作技巧。Android组件相关概念总结Android传值方法细讲Android横竖屏切换正确实现方式分享Android开发环境相关配置概览Android NDK具体作用讲解对于我们所熟悉的大部分软件都有一个比较典型的特点,应用现有的数据根据不同的需求来得到相应的结果。例如,我们最常用的Officeword、Excel、PowerPoint等办公软件,它们都是帮助我们完成某种特定的需求,同时由其所产生的数据或者文档又可以被其它软件所读取和做进一步的优化等等,在这个层面上可以看成是这些软件通过相同的文件标准来共享数据。但是对于Android最大的不同点在于,其平台上的应用软件所存储的数据或者文件是私有,仅仅可以通过它自身才可以访问其所包含的数据资源。那么基于这样的限制,该如何在Android平台上实现不同程序间的数据共享呢?答案非常简单 – 应用ContentProviders,这是建立在Android平台上用于定义统一的数据标准。Android提供了针对不同数据类型的ContentProviders来满足各种需要。例如:Image、Audio、Video和通讯录信息类等。阅读下边的文档之前,最好先熟悉Content Providers的概念。有了上边所提到Content Providers,接下来就要处理在共享文件过程中的存储环节了,这里有四种方法分别适用于不同情况的需求。它们都各自有相应的优缺点,所以当开发者决定选择应用哪种方法之前,先要考虑当前所操作的情况是否适合于所选择的方法。Preferences Files Databases Network 接下来将依次介绍上诉四个Android保存数据方法:Preferences从其保存数据的结构来分析,这是一个相对较轻量级的存储数据的方法。类似于我们常用的ini文件保存软件初始化设置,同样在Android平台常用于存储较简单的参数设置。例如,可以通过它保存上一次用户所作的修改或者自定义参数设定,当再次启动程序后依然保持原有的设置。通过Context.getSharedPreferences()方法来读写数值,这个方法通过设置name来使得同一个程序内的其它模块共享数据。如果不需要与其它模块共享数据,可以使用Activity.getPreferences()方法保持数据私有。需要着重强调一点,无法直接在多个程序间共享Preferences数据(不包括使用Content Providers)。通过一个实例来了解实际使用方法:import android.app.Activity; import android.content.SharedPreferences; public class Calc extends Activity { public static final String PREFS_NAME = "MyPrefsFile"; . . . . Override protected void onCreate(Bundle state){ super.onCreate(state); . . . . // Restore preferences SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); boolean silent = settings.getBoolean("silentMode", false); setSilent(silent); } @Override protected void onStop(){ super.onStop(); // Save user preferences. We need an Editor object to // make changes. All objects are from android.context.Context SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); SharedPreferences.Editor editor = settings.edit(); editor.putBoolean("silentMode", mSilentMode); // Don't forget to commit your edits!!! editor.commit(); } } Files从这是第二种方法,可以在设备本身的存储设备或者外接的存储设备中创建用于保存数据的文件。同样在默认的状态下,文件是不能在不同的程序间共享。写文件:调用Context.openFileOutput()方法根据指定的路径和文件名来创建文件,这个方法会返回一个FileOutputStream对象。读取文件:调用Context.openFileInput()方法通过制定的路径和文件名来返回一个标准的Java FileInputStream对象。
(注意:在其它程序中将无法应用相同的路径和文件名来操作文件)另外编译程序之前,在res/raw/tempFile中建立一个static文件,这样可以在程序中通过Resources.openRawResource (R.raw.myDataFile)方法同样返回一个InputStream对象,直接读取文件内容。Databases在Android API中包括了应用SQLite databases的接口,每个程序所创建的数据库都是私有的,换句话说,程序间无法相互访问对方的数据库。在程序中创建SQLiteDatabase对象,其中包含了大部分与database交互的方法,例如:读取数据或者管理当前数据。可以应用SQLiteDatabase和其subClassSQLiteOpenHelper的create()方法来创建新的数据库。对于SQLitedatabase而言,其强大和方便的功能为Android提供了强有力的存储功能。特别是存储一些复杂的数据结构,例如:Android特别为通讯录创建了特有的数据类型,其中包含了非常多的子集而且涵盖了大部分的数据类型 “First Name” “Last Name” “PhoneNumber”和“Photo”等。Android可以通过Sqlite3 database tool来查看指定数据库中表的内容,直接运行SQL命令来快速便捷的直接操作SQLite database。
⑥ android 怎么在代码中引用assets中的资源
1。获取资源的输入流
资源文件 sample.txt 位于 $PROJECT_HOME/assets/ 目录下,可以在 Activity 中通过
Context.getAssets().open(“sample.txt”)
方法获取输入流。
注意:如果资源文件是文本文件则需要考虑文件的编码和换行符。建议使用UTF-8和Unix换行符。
2. WebView 加载assets目录下的html文件
资源文件 sample.html 位于 $PROJECT_HOME/assets/ 目录下,可以通过以下代码
WebView.loadUrl(“file:///android_asset/sample.html”);
加载html文件。
⑦ android项目下的raw和assets目录不可写吗
是的。你可以这样理解:apk是个压缩包,安装apk时,Android系统把这个压缩包解压,把里面的资源拷贝到手机中,然后就不用这个apk包了
⑧ 求Android把文件从assets复制到程序安装目录下的databases文件夹下的源代码
private final String addstr="/data/data/com.qingmou/databases/";//里面的包名换成你自己的
InputStream assetsDB = this.getAssets().open(strIn);//strln是assets文件夹下的文件名
OutputStream dbOut = new FileOutputStream(addstr + strOut);//strout是你要保存的文件名
byte[] buffer = new byte[1024];
int length;
while ((length = assetsDB.read(buffer)) > 0) {
dbOut.write(buffer, 0, length);
}
dbOut.flush();
dbOut.close();
assetsDB.close();
⑨ android怎么将assets的文件复制到sd卡上
private void assetsDataToSD(String fileName) throws IOException
{
InputStream myInput;
OutputStream myOutput = new FileOutputStream(fileName);
myInput = this.getAssets().open("myfile.zip");
byte[] buffer = new byte[1024];
int length = myInput.read(buffer);
while(length > 0)
{
myOutput.write(buffer, 0, length);
length = myInput.read(buffer);
}
myOutput.flush();
myInput.close();
myOutput.close();
}
😃😃😊😊
⑩ 如何在Android Studio中放置assets文件夹
Android Studio中放置assets文件夹需要手动创建,我以存放一张图片为例说明。
新建一个项目,切换到当前的Mole,在main文件夹下新建一个名为“assets”文件夹如下图:
在AndroidStudio里以输入流的方式读取资源,部分代码如下: