Xamarin.Android 如何使用Assets目录下的文件

原创 2015年02月09日 16:44:49

个人原创,转载注明出处:http://blog.csdn.net/supluo/article/details/43672411

Xamarin.Android  官网介绍地址:http://developer.xamarin.com/guides/android/application_fundamentals/resources_in_android/part_6_-_using_android_assets/


这里插入一下Assets与Raw目录的异同点

这两个目录的相同点:

   1、 这两个目录下的文件会在打包之后原封不动的保存在apk包中,不会编译成二进制文件。

    2、这两个目录下的文件都是只读的。

不同点:

      1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类。

    2.res/raw不可以有目录结构,而assets则可以有目录结构,也就是assets目录下可以再建立文件夹

Assets使得我们可以在程序中包含任意的文本、xml、音乐、视频等文件,这就好比为程序内设一些资源以供使用。更改程序字体就会在这个目录下放置一些预设置的字体文件。

一、Xamarin.Android中如何打开Assets中的文件

1、设置文件生成操作方式为AndroidAsset。(对着文件右键,弹出菜单中选择属性,即可看到生成方式一栏)。

    由于有些开发者使用的是破解工具,并且版本都比较低,因此新增加的文件可能并不是这个方式,因此这一点需要注意,否则这个可能成为一个非常折磨人的问题。通过从其他地方复制而来的文件的生成方式也可能不是上述生成方式。

2、在代码中使用,假如现在Assets目录下保存了一个名为"read_asset.text"的文件

    var tv = new TextView (this);
    // Read the contents of our asset
    string content;
    using (StreamReader sr = new StreamReader (Assets.Open ("read_asset.txt")))
    {
        content = sr.ReadToEnd ();
    }
    // Set TextView.Text to our asset content
    tv.Text = content;
    SetContentView (tv);


上述代码变可以以流的形式读取文本中的内容,Assets.Open的第二个参数可以指定检索数据的方式。


个人搞了个博客App,平时上个厕所,睡觉前等随便看两篇文章,总能有些收获,希望大家支持!http://blog.csdn.net/supluo/article/details/43489475

Xamarin.iOS 文件的创建与读取

Xamarin.iOS文件的创建与读取
  • geanwen
  • geanwen
  • 2017年01月09日 11:01
  • 1258

C#开发Android-文件的读写

////file = new SundryClass.FileClass();             //Java.IO.File dirv = new Java.IO.File(filepath...
  • u010127332
  • u010127332
  • 2014年07月06日 16:29
  • 2086

Xamarin android使用Sqlite做本地存储数据库

android使用Sqlite做本地存储非常常见(打个比方就像是浏览器要做本地存储使用LocalStorage,貌似不是很恰当,大概就是这个意思)。 SQLite 是一个软件库,实现了自给自足的、无服...
  • kebi007
  • kebi007
  • 2016年12月22日 00:39
  • 3417

Xamarin.Android开发及常见问题的解决

Xamarin.Android开发及常见问题的解决 1 一、 Xamarin.Android开发环境的搭建 2 (一) 所需组件 2 (二) 搭建环境两种可选方案 2 (三) 安装顺序 2 二、 常见...
  • ICEO45683968
  • ICEO45683968
  • 2015年01月07日 16:39
  • 3635

获取assets下资源文件并解析

获取assets下资源文件: try { AssetManager assetManager = mContext.getAssets(); cates = ParseXML.pa...
  • heng615975867
  • heng615975867
  • 2013年10月25日 15:19
  • 2927

Xamarin Getting Started翻译系列九--操作音频

操作音频概述现代的移动设备集成了一些特殊功能的设备—摄像头、音乐播放器和视频录像。因此,多媒体框架成为了移动API的第一大特性。Android对多媒体提供了大量的支持。本文讲述在Android中操作音...
  • henreash
  • henreash
  • 2015年03月21日 21:12
  • 2564

Android读取assets目录下文件数据内容

注:原博:http://blog.csdn.net/zhangphil Android读取assets目录下文件数据内容 Android的体系架构设计中,ass...
  • zhangli_
  • zhangli_
  • 2015年11月24日 11:11
  • 1396

Android读取assets目录下所有文件

package org.crazyit.image; import java.io.IOException; import java.io.InputStream; import android....
  • laotou99
  • laotou99
  • 2014年12月06日 11:38
  • 8329

android读写assets目录下面的资源文件(文件夹)

Android除了提供/res目录存放资源文件外,在/assets目录也会提供存放资源文件,在/assets目录下面不会在R.java里面自动生成ID,所以读取assets目录下面的资源文件需要提供路...
  • shadaiodewangwei
  • shadaiodewangwei
  • 2015年09月10日 16:21
  • 2389

Android读取assets目录下文件

assets类资源放在工程根目录的assets目录下,它里面保存的是一些原始的文件,可以以任何方式来进行组织,这些文件最终会被原装不动地打包在apk文件中。要在程序中访问这些文件,根据访问需求,可以分...
  • arielcoder
  • arielcoder
  • 2015年12月15日 11:15
  • 1148
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Xamarin.Android 如何使用Assets目录下的文件
举报原因:
原因补充:

(最多只允许输入30个字)