当前位置: 首页 > news >正文

java阅读安卓,java – 如何在android中逐行阅读?

我正在使用此代码.

try{

// Open the file that is the first

// command line parameter

FileInputStream fstream = new FileInputStream("config.txt");

// Get the object of DataInputStream

DataInputStream in = new DataInputStream(fstream);

BufferedReader br = new BufferedReader(new InputStreamReader(in));

while ((br.readLine()) != null) {

temp1 = br.readLine();

temp2 = br.readLine();

}

in.close();

}catch (Exception e){//Catch exception if any

Toast.makeText(getBaseContext(), "Exception", Toast.LENGTH_LONG).show();

}

Toast.makeText(getBaseContext(), temp1+temp2, Toast.LENGTH_LONG).show();

但是这显示异常并且没有更新temp1和temp2.

解决方法:

你看到的例外 – 我强烈建议a)作为特定类型捕获,例如IOException,以及b)使用消息或堆栈跟踪进行日志记录或显示,以及c)至少要在LogCat中检查,如果您使用Eclipse编程,则从DDMS角度来看 – 可能是因为Android没有找到config.txt你试图打开的文件.通常,对于像您这样的最简单的情况,使用openFileInput – see the documentation打开应用程序专用的文件以获取详细信息.

除了异常之外,您的读取循环有缺陷:您需要在输入之前初始化空字符串,并在while条件下填充它.

String line = "";

while ((line = br.readLine()) != null) {

// do something with the line you just read, e.g.

temp1 = line;

temp2 = line;

}

但是,如果您只想将前两行保存在不同的变量中,则不需要循环.

String line = "";

if ((line = br.readLine()) != null)

temp1 = line;

if ((line = br.readLine()) != null)

temp2 = line;

正如其他人已经指出的那样,调用readLine会消耗一行,所以如果你的config.txt文件只包含一行你的代码在while条件下使用它,那么temp1和temp2会被赋值为null,因为没有更多的文本需要读取.

标签:file-handling,android,java

来源: https://codeday.me/bug/20191006/1859584.html

相关文章:

  • plotm matlab,MATLAB画地图的工具:worldmap和m_map
  • matlab不能盗版吗,matlab为了防止盗版,会不会篡改程序运行结果?这是明证
  • matlab 复权数据,〖Matlab〗基于通达信股价数据的复权处理(fantuanxiaot版本)
  • 微信小程序向php传递数据,微信小程序 跳转传递数据的方法
  • mysql8默认存储,MySQL 8.0安装
  • php berkeleydb,berkeleydb-5.1
  • matlab vs 打包exe文件路径,Matlab中調用VS編譯的exe文件並傳遞變量 的方法
  • php 访问受保护的属性,php – 我们应该直接访问受保护的属性还是使用getter?
  • PHP限制请求类型,Laravel :API 请求频率限制(Throttle中间件),自定义返回JSON类型,自定义时间...
  • oracle归档增长快,归档日志增长过快的问题
  • oracle 行转列 顺序,Oracle PIVOT 行转列的单行小计如何实现?
  • oracle asm安装详情,oracle ASM安装记录
  • oracle in _all和any的区别,英语all和any的用法区别
  • linux用户隔离,CentOS下实现用户隔离模式的SFTP
  • linux kdump保存的目录,学习猿地-Linux中的Kdump服务
  • 自己简单写的 事件订阅机制
  • [LeetCode] Wiggle Sort
  • 《Java编程思想》读书笔记-对象导论
  • 2017前端实习生面试总结
  • canvas绘制圆角头像
  • github指令
  • Laravel 实践之路: 数据库迁移与数据填充
  • leetcode98. Validate Binary Search Tree
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • SpiderData 2019年2月25日 DApp数据排行榜
  • springMvc学习笔记(2)
  • Sublime text 3 3103 注册码
  • windows下使用nginx调试简介
  • 人脸识别最新开发经验demo
  • 实习面试笔记
  • 推荐一个React的管理后台框架
  • 微服务核心架构梳理
  • #微信小程序:微信小程序常见的配置传值
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (1)Map集合 (2)异常机制 (3)File类 (4)I/O流
  • (26)4.7 字符函数和字符串函数
  • (js)循环条件满足时终止循环
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (一) springboot详细介绍
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转)大型网站架构演变和知识体系
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • .net core 依赖注入的基本用发
  • .Net IOC框架入门之一 Unity
  • .NET命名规范和开发约定
  • .NET下ASPX编程的几个小问题
  • .Net中的设计模式——Factory Method模式
  • .NET中使用Redis (二)
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • @Transaction注解失效的几种场景(附有示例代码)
  • @开发者,一文搞懂什么是 C# 计时器!
  • @取消转义