导航:首页 > 操作系统 > android文件分段读取

android文件分段读取

发布时间:2022-09-12 14:55:20

android如何读取sd卡目录文件夹下多个文件,自定义一个case文件夹,如何读取里面的多个文件

List<File> mFileList;
public void onCreate(Bundle savedInstanceState) {
mFileList=new ArrayList<File>();
File f = new File("mnt/sdcard/case");
List<File> fileList=getFile(f);//将这个集合加载到Adapter里 在ListView里显示就行了
}

public List<File> getFile(File file){
File[] fileArray =file.listFiles();
for (File f : fileArray) {
if(f.isFile()){
mFileList.add(f);
}else{
getFile(f);
}
}
return mFileList;
}

② android一个文本文件如何按行读取

java">try{
InputStreammyInput=mcontext.getResources().openRawResource(R.raw.medicalspeciality);
InputStreamReaderreader=newInputStreamReader(myInput);
BufferedReaderbreader=newBufferedReader(reader);
Stringstr;
FileWritermyOutput=newFileWriter(outFileName,true);
while((str=breader.readLine())!=null){
System.out.println(i+++str);
}
//Closethestreams
myOutput.flush();
myOutput.close();
myInput.close();
}catch(Exceptione){
//TODO:handleexception
e.getStackTrace();
}

③ android读取txt文件

您好,Android的res文件夹是用来存储资源的,可以在res文件夹下建立一个raw文件夹,放置在raw文件夹下的内容会被原样打包,而不会被编译成二进制文件,并且可以通过R文件进行很方便地访问。
比如我们可以将更新信息、版权信息等放到txt文件中,然后放到raw文件中,然后很方便地进行访问。
在raw中放入一个a.txt文件,然后就可以在Activity中使用getResources().openRawResource(R.raw.a);方法获取一个此文件的InputStream类,而后就可以很方便地进行读写a.txt了。

④ android读取TXT文件数据

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String fileName = "/sdcard/y.txt";//文件路径
// 也可以用String fileName = "mnt/sdcard/Y.txt";
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
// FileInputStream fin = openFileInput(fileName);
// 用这个就不行了,必须用FileInputStream
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");////依Y.txt的编码类型选择合适的编码,如果不调整会乱码
fin.close();//关闭资源
System.out.println("res--->"+res);
int a=Integer.parseInt(res.substring(3, 5));
int b=Integer.parseInt(res.substring(8, 10));
System.out.println(a+"res--->"+b);//获取的a.b
} catch (Exception e) {
e.printStackTrace();
}
}

⑤ Android开发之如何读写文件

【转】

首先介绍如何存储数据,显然,要将数据从应用中输出到文件中,必须得到一个输出流outPutStream,然后往输出流中写入数据,在这里Android自带了一个得到应用输出流的方法

FileOutputStream fos =context.openFileOutput(“yuchao.txt”,Context.MODE_PRIVATE); (1)

其中第一个属性为文件名,第二个属性为读写模式(有关读写模式的说明下面将详细阐述),

然后在文件输出流fos中便可以写入数据

Fos.write(“Hi,”I’m Chao Yu!”.getBytes());

用完文件输出流之后记得关闭

fos.close();

这样,在/data/data/packageName/file目录下就生成了一个文件名为yuchao.txt的文件,文件中的内容为” Hi,I’m Chao Yu!”

有关(1)中读写模式其实就是制定创建文件的权限以及在读写的时候的方式,Android中提供了以下几种读写模式

Context.MODE_PRIVATE = 0

该模式下创建的文件其他应用无权访问,并且本应用将覆盖原有的内容

Context.MODE_APPEND = 32768

该模式下创建的文件其他应用无权访问,并且本应用将在原有的内容后面追加内容

Context.MODE_WORLD_READABLE = 1

该模式下创建的文件其他应用有读的权限

Context.MODE_WORLD_WRITEABLE = 2

该模式下创建的文件其他应用有写的权限

如果需要将文件设置为外部应用可以读写,可将读写模式设置为Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE

一般情况下,各个应用维护的数据都在一个特定的文件夹中,即上面所提到的/data/data/packageName/file(存在于手机存储中),但手机内存毕竟有限,所以有些情况下,我们需要往SD卡中写入数据文件,这其实和普通的java web 应用步骤一样,都是先创建特针对特定目录特定文件的输出流,然后往输出流中写数据,这里要注意一个方法,就是获取SD卡根目录的方法,随着Android系统不断升级,SD卡的根目录随时都有可能改变,Android中得到SD卡根目录的方法是

File sdCardDir = Environment.getExternalStorageDirectory();

然后就可以进行下面的步骤

File saveFile = new File(sdCardDir, “yuchao.txt”);

FileOutputStream outStream = new FileOutputStream(saveFile);

outStream.write("Hi,I’m ChaoYu".getBytes());

outStream.close();

值得注意的是,在往SD卡中写数据的时候,健壮的代码必须考虑SD卡不存在或者写保护的情况,故在写入之前,先做判断

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){

……

}

接着,我们来学习下我们的应用程序如何读取文件中的数据,其实就是写的逆向过程

若要读取应用程序默认维护的文件(即/data/data/packageName/file目录下的文件),首先得到文件输入流

FileInputStream istream = this.context.openFileInput(“yuchao.txt”);

然后在内存中开辟一段缓冲区

byte[] buffer = new byte[1024];

然后创建一个字节数组输出流

ByteArrayOutputStream ostream = new ByteArrayOutputStream();

读出来的数据首先放入缓冲区,满了之后再写到字符输出流中

while((len=istream.read(buffer))!=-1){

ostream.write(buffer, 0, len);

}

最后关闭输入流和输出流

istream.close();

ostream.close();

将得到的内容以字符串的形式返回便得到了文件中的内容了,这里的流操作较多,故以一张图片来说明,见图1

return new String(ostream.toByteArray());

从SD卡中读取数据与上述两个步骤类似,故不再赘述,留给读者自己思考

如在开发过程中进行SD卡地读写,切忌忘了加入权限

<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

至此,Android系统中有关文件数据的读写介绍完毕。

⑥ 如何在Android开发中对properties文件进行读取

通过流文件来进行properties文件读取的,要将文件放入到assets文件夹或者raw文件夹中.例如,我们这里有一个文件test.properties,如果放入了assets文件夹中,可以如下打开:

Propertiespro=newProperties();
InputStreamis=context.getAssets().open("test.properties");
pro.load(is);

如果放入到raw文件夹中,可以通过如下方式打开:

Java代码

InputStreamis=context.getResources().openRawResource(R.raw.test);


Java代码

Propertiespro=newProperties();
pro.load(FileLoad.class.getResourceAsStream("/assets/test.properties"));



读写函数分别如下:

importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.util.Properties;

publicPropertiesloadConfig(Contextcontext,Stringfile){
Propertiesproperties=newProperties();
try{
FileInputStreams=newFileInputStream(file);
properties.load(s);
}catch(Exceptione){
e.printStackTrace();
}
returnproperties;
}

publicvoidsaveConfig(Contextcontext,Stringfile,Propertiesproperties){
try{
FileOutputStreams=newFileOutputStream(file,false);
properties.store(s,"");
}catch(Exceptione){
e.printStackTrace();
}
}

是不是发现什么了?对了,这两个函数与Android一点关系都没有嘛。。
所以它们一样可以在其他标准的java程序中被使用
在Android中,比起用纯字符串读写并自行解析,或是用xml来保存配置,
Properties显得更简单和直观,因为自行解析需要大量代码,而xml的操作又远不及Properties方便

使用方法如下:
写入配置:

Propertiesprop=newProperties();
prop.put("prop1","abc");
prop.put("prop2",1);
prop.put("prop3",3.14);
saveConfig(this,"/sdcard/config.dat",prop);

读取配置:

Propertiesprop=loadConfig(this,"/sdcard/config.dat");
Stringprop1=prop.get("prop1");

注:也可以用Context的openFileInput和openFileOutput方法来读写文件
此时文件将被保存在 /data/data/package_name/files下,并交由系统统一管理
用此方法读写文件时,不能为文件指定具体路径。
在android中,当我们打包生成apk后,将apk放入到真正的手机上时,你会找不到test.properties文件,不要惊讶,android中的资源文件是只能存放在assets或者res的子目录里面的,程序包中的资源文件编译后,是会丢失的!那么是不是我们的第二种方法就没法使用了?当然不是,经过实验发现,将文件放入到assets文件夹里,而在传入路径里面填入文件绝对路径,还是可以引用该文件的.

⑦ Android中怎么逐帧读取视频文件

MediaMetadataRetriever media = new MediaMetadataRetriever();
media.setDataSource(”视频的绝对地址“);
Bitmap bitmap = media.getFrameAtTime();
image = (ImageView)this.findViewById(R.id.imageView1);
image.setImageBitmap(bitmap);

这个是获取第一祯的代码,可以参考下

⑧ android如何读取sdcard所有文件,而不仅仅是sdcard目录下的

File 还有一个方法是

String[]
list()
Returns an array of strings naming the files and directories in the
directory denoted by this abstract pathname.

“files and directories” ,然后自己递归

⑨ android读取大文件

风车广告联盟精准推广广告平台,200元即享十万高效流量,30天内ip不重复。

阅读全文

与android文件分段读取相关的资料

热点内容
数据中心pdf 浏览:520
crf源码解析 浏览:851
服务器软件开发是什么意思 浏览:939
删除彩信android 浏览:862
元宵节猜灯谜h5源码 浏览:69
乐培生app怎么绑定 浏览:762
视频压缩不清楚怎么说 浏览:525
加好友服务器繁忙是怎么回事 浏览:381
怎么解绑app的支付宝账号 浏览:911
ip地址服务器不可用怎么解决方法 浏览:183
为什么软件需要服务器 浏览:63
redis操作命令大全 浏览:597
python字符串重复索引 浏览:961
为什么香信新版本连接不上服务器 浏览:50
元旦程序员打羽毛球 浏览:614
otc焊接机器人离线编程教学 浏览:412
51单片机的ea引脚有何用途 浏览:207
centos查看用户命令 浏览:840
程序员脸胖 浏览:744
hdfs在主目录下创建文件夹 浏览:800