Android开发 ---如何操作资源目录中的资源文件5 ---Raw资源管理与国际化
效果图:




1、activity_main.xml
描述:
定义两个按钮,一个是Raw资源管理,一个是处理国际化语言,其中i18n表示简体中文
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Raw资源管理"
android:onClick="test_5"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/i18n"
android:onClick="test_5"
/>
</LinearLayout>
2、MainActivity.java
描述:
页面跳转
package com.example.android_shaperesoucesdemo;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); }
public void test_5(View view){
Intent intent = new Intent(this,RawActivity.class);
startActivity(intent);
}
}
3、activity_raw.xml
描述:
定义两个按钮,一个实现读取Raw资源文件中的文本资源;一个实现读取Raw资源文件中的音频资源
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_raw"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/showMessage"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="读取Raw中文本资源"
android:onClick="readTxt"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="读取Raw中音频资源"
android:onClick="readMp3"
/>
</LinearLayout>
4、RawActivity.java
package com.example.android_shaperesoucesdemo;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView; import java.io.IOException;
import java.io.InputStream; public class RawActivity extends Activity {
private TextView showMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_raw);
showMessage = (TextView)findViewById(R.id.showMessage);
}
//读取文本资源
public void readTxt(View view){
//定义一个输入流,读取raw文件中的hello文件
//Android读取asserts和raw文件夹下的文件 经常需要用到读取“/res/raw”和"/asserts"文件夹下的文件
InputStream input = getResources().openRawResource(R.raw.hello);
try {
//获取流的大小
int size = input.available();
//将流转换为字节
byte[] bytes = new byte[size];
//读出字节
input.read(bytes);
input.close();
//将字节转换成字符串显示在UI界面上
showMessage.setText(new String(bytes));
} catch (IOException e) {
e.printStackTrace();
}
}
//定义一个读取MP3文件资源的方法
public void readMp3(View view) throws IOException{
//MediaPlayer是播放音频和视频的组件
//通过组件获取raw中的音乐文件nobody
MediaPlayer mp = MediaPlayer.create(this,R.raw.nobody);
//开始播放音乐
mp.start();
}
}
5、res目录下创建一个raw包,在包中创建一个文本文件hello.txt,并在包中放一首音乐nobody.mp3
在hello.txt文件中随便输入一些内容

6、处理国际化:
在res资源目录下创建一个values-zh-rCN的包,包中创建一个String.xml文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Android_Resouces_2</string> <!--定义字符串-->
<string name="i18n">国际化</string>
</resources>
在main目录下创建一个assets的资源目录


然后在assets目录下放入一个SIMKAL.TTF文件,这个文件是简体中文
文件下载地址:http://www.font5.com.cn/zitixiazai/1/534.html
Android开发 ---如何操作资源目录中的资源文件5 ---Raw资源管理与国际化的更多相关文章
- Android开发---如何操作资源目录中的资源文件4 ---访问xml的配置资源文件的内容
Android开发---如何操作资源目录中的资源文件4 XML,位于res/xml/,这些静态的XML文件用于保存程序的数据和结构. XmlPullParser可以用于解释xml文件 效果图: 描述: ...
- Android开发---如何操作资源目录中的资源文件3--圆角边框、背景颜色渐变效果、边框颜色
Android开发---如何操作资源目录中的资源文件3 效果图 1.圆角边框 2.背景颜色渐变效果 1.activity_main.xml 描述: 定义了一个shape资源管理按钮 <?xml ...
- Android开发 ---如何操作资源目录中的资源文件2
Android开发 ---如何操作资源目录中的资源文件2 一.颜色资源管理 效果图: 描述: 1.改变字体的背景颜色 2.改变字体颜色 3.改变按钮颜色 4.图像颜色切换 操作描述: 点击(1)中的颜 ...
- Android开发---如何操作资源目录中的资源文件
效果图: 1.activity_main.xml <?xml version="1.0" encoding="utf-8"?> <Linear ...
- android开发之-查看、编辑手机sqlite数据库文件-实测
效果图: 1.开始——运行——输入cmd ,输入adb shell,错误:一是“adb不是内部命令或外部命令,也不是可运行的程序或批处理文件”,二是“error:device not found”. ...
- 在/proc文件系统中增加一个目录hello,并在这个目录中增加一个文件world,文件的内容为hello world
一.题目 编写一个内核模块,在/proc文件系统中增加一个目录hello,并在这个目录中增加一个文件world,文件的内容为hello world.内核版本要求2.6.18 二.实验环境 物理主机:w ...
- 创建一个目录info,并在目录中创建一个文件test.txt,把该文件的信息读取出来,并显示出来
/*4.创建一个目录info,并在目录中创建一个文件test.txt,把该文件的信息读取出来,并显示出来*/ #import <Foundation/Foundation.h>#defin ...
- python实现在目录中查找指定文件的方法
python实现在目录中查找指定文件的方法 本文实例讲述了python实现在目录中查找指定文件的方法.分享给大家供大家参考.具体实现方法如下: 1. 模糊查找 代码如下: import os from ...
- 如何查找一个目录中所有c文件的总行数
如何查找一个目录中所有c文件的行数 面试题问到了一题,如何统计wc文件夹下所有文件的行数,包括了子目录. 最后在 https://blog.csdn.net/a_ran/article/details ...
随机推荐
- 雷林鹏分享:服务器上的 XML
服务器上的 XML XML 文件是类似 HTML 文件的纯文本文件. XML 能够通过标准的 Web 服务器轻松地存储和生成. 在服务器上存储 XML 文件 XML 文件在 Internet 服务器上 ...
- OnSen UI结合AngularJs打造”美团"APP底部导航栏 --Hybrid App
1.页面效果图:(点击底部导航按钮,可切换到不同的页面) 演示地址:http://www.nxl123.cn/bokeyuan/2018080301/meiTuanDemo/ 2.项目目录结构 3.核 ...
- Android+Struts2实现简单的前后台交互--Android网络编程
1.下面测试截图,基本过程就是:点击按钮向服务器端发送请求,后台收到请求后给出返回的数据,前台只需要显示服务端数据就可以了.例子很简单能但引发很多思考,博主学了杂七杂八的,这又在来想杂学Android ...
- HTML 弹出遮罩层一(遮罩层和内容标签嵌套)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【洛谷p1031】均分纸牌
[博客园的第一条随笔,值得纪念一下] 均分纸牌[传送门] 洛谷上的算法标签是 这道题是一道贪心题,过了四遍才过(蒟蒻有点废) 第一遍的时候考虑的非常少,只想到了求出平均数→求差值→从左往右加差值: 这 ...
- bzoj2875
题意:\(x_{i+1}=(x_{i}*a+c)%m\)求,x_n%g 题解:\(x_n=(a^n*x_0+(a^{n-1}+a^{n-2}+...+a+1)*c)%m\),由于a-1和m不一定互质, ...
- 3月25 JavaScript 练习题
一个关于找7的题 <script type="text/javascript" language="javascript"> for(var i=1 ...
- Pycharm中安装package出现microsoft visual c++ 14.0 is required问题解决办法
在利用pycharm安装scrapy包是遇到了挺多的问题.在折腾了差不多折腾了两个小时之后总算是安装好了.期间各种谷歌和百度,发现所有的教程都是利用命令行窗口安装的.发现安装scrapy需要的包真是多 ...
- ThinkPHP5集成JS-SDK实现微信自定义分享功能
最近开发一个项目,需要将链接分享给好友时能够自定义标题.简介和logo,现将ThinkPHP5集成JS-SDK实现微信自定义分享功能的过程整理成文. 一.准备工作 1.认证的公众号 不管是订阅号还是服 ...
- MapReduce(一)
MapReduce(一) 一.介绍 百度百科: MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算.概念"Map(映射)"和"Reduce(归约) ...