package com.ostrichmyself.api.util;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
/**
* 普通的文本文件读取与写入操作
* 注意,面向字符的, 用Reader/Writer, 面向字节的, InputStream/OutputStream
* 面向字符会产生乱码问题, 此时需要采用 InputStreamReader去改写字符
* 为了不造成问题的复杂, 这里不做研究, 采用系统默认编码[GB2312], 仅仅写了一个处理乱码的函数
* getStringFromFile(String filePath, String code)
* @author Galaxy Team
*
*/
public class FileProcesser {
/**
* 文件保存为String
* 读取的是字符, 不是字节
* 采用默认编码
* @param filePath
* @return
*/
public static String getStringFromFile(String filePath)
{
try {
StringBuffer sBuffer = new StringBuffer();
BufferedReader in = new BufferedReader(new FileReader(filePath));
if(!new File(filePath).exists())
{
return null;
}
while (in.ready()) {
sBuffer.append(in.readLine() + "\r\n");
}
in.close();
return sBuffer.toString();
} catch (Exception e)
{
System.out.println("不存在制定的文件" + filePath);
}
return null;
}
/**
* 文件保存为String
* 读取的是字符, 不是字节
* code 的取值不区分大小写
* GBK, GB2312, UTF8/UTF-8, UTF-16/UTF16, utf-16be等
* @param filePath
* @param code 编码方式
* @return
*/
public static String getStringFromFile(String filePath, String code)
{
try {
StringBuffer sBuffer = new StringBuffer();
FileInputStream fInputStream = new FileInputStream(filePath);
InputStreamReader inputStreamReader = new InputStreamReader(fInputStream, code);
BufferedReader in = new BufferedReader(inputStreamReader);
if(!new File(filePath).exists())
{
return null;
}
while (in.ready()) {
sBuffer.append(in.readLine() + "\r\n");
}
in.close();
return sBuffer.toString();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 从文件中取二进制字节数组
* @param filePath
* @return
*/
public static byte[] getByteFromFile(String filePath)
{
FileInputStream fileInputStream = null;
byte[] data = null;
BufferedInputStream bf = null;
try {
fileInputStream = new FileInputStream(filePath);
bf = new BufferedInputStream(fileInputStream);
data = new byte[bf.available()];
bf.read(data);
return data;
}
catch(Exception e)
{
e.printStackTrace();
}
finally {
try {
fileInputStream.close();
bf.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
/**
* 保存文本文件
* 写入的是字符, 不是字节
* @param filePath
* @param content
*/
public static void setStringContentToFile(String filePath, String content)
{
try {
File file = new File(filePath);
file.createNewFile();
FileOutputStream fo = new FileOutputStream(filePath);
PrintWriter pw = new PrintWriter(new File(filePath));
pw.write(content);
fo.close();
pw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
*
* @param filePath
* @param content
*/
public static void setBytesContentToFile(String filePath, byte[] content)
{
FileOutputStream fileOutputStream = null;
BufferedOutputStream bf = null;
try {
File file = new File(filePath);
file.createNewFile();
fileOutputStream = new FileOutputStream(filePath);
bf = new BufferedOutputStream(fileOutputStream);
fileOutputStream.write(content);
}
catch(Exception e)
{
e.printStackTrace();
}
finally {
try {
fileOutputStream.close();
bf.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args)
{
//res/IniFileProcessor.java采用的是UTF-8
System.out.println(getStringFromFile("res/IniFileProcessor.java").trim());
System.out.println(getStringFromFile("res/IniFileProcessor.java", "UTF-8").trim());
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android应用源码在线词典源码.zip项目安卓应用源码下载
共41个文件
class:18个
java:11个
xml:4个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 5 浏览量
2022-03-07
17:19:03
上传
评论
收藏 142KB ZIP 举报
温馨提示
Android应用源码在线词典源码.zip项目安卓应用源码下载Android应用源码在线词典源码.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
资源推荐
资源详情
资源评论
收起资源包目录
Android应用源码在线词典源码.zip (41个子文件)
Android应用源码在线词典源码
Android应用源码在线词典源码
在线词典源码
Dictionary.rar 62KB
Dictionary
Dictionary
bin
classes.dex 15KB
com
ostrichmyself
api
util
FileProcesser.class 4KB
URLProcesser.class 2KB
dict
R$layout.class 364B
R$id.class 515B
R$drawable.class 370B
Dictionary.class 5KB
R$attr.class 310B
R.class 461B
R$string.class 495B
Dictionary$SearchButtonAction.class 721B
Dictionary$TheKeyListener.class 1KB
app
dict
net
DictXMLParser.class 290B
DictRemoteConnection.class 945B
common
xmlParser
net
Example.class 911B
AndroidXMLParser.class 3KB
BaseParser.class 3KB
connection
net
IRemoteConnection.class 205B
HTTPContentUtil.class 2KB
resources.ap_ 8KB
Dictionary.apk 17KB
res
drawable
icon.PNG 5KB
values
strings.xml 341B
layout
main.xml 2KB
default.properties 364B
gen
com
dict
R.java 1KB
src
com
ostrichmyself
api
util
URLProcesser.java 1KB
FileProcesser.java 4KB
dict
Dictionary.java 4KB
app
dict
net
DictRemoteConnection.java 473B
DictXMLParser.java 60B
common
xmlParser
net
Example.java 768B
BaseParser.java 2KB
AndroidXMLParser.java 2KB
connection
net
IRemoteConnection.java 236B
HTTPContentUtil.java 1KB
.project 846B
.classpath 280B
Temple.xml 611B
AndroidManifest.xml 738B
共 41 条
- 1
资源评论
yxkfw
- 粉丝: 81
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功