Android网络请求和JavaIO流
2016-05-26 本文已影响335人
清枫_小天
Android网络发出请求
- 加权限 (internet)
- 发请求就必须写在子线程
- 界面更新就必须用handler机制(特例progressBar)
- ip
- 乱码
构建服务器端,创建一个web,在创建一个包和Servlet
在部署到tomcat中
从Servers中server.xml文件中查看端口号
单线程机制线程不安全,如果子线程也可以更新UI,比如多个线程同时更改UI就会乱套Handler相当于小秘
JAVA I/O流
换行符号:系统自带记事本的换行符号 Windows "\r\n" linux "\n" mac "\r"
IO流分类
字节流:
InputStream
FileInputStream
BufferedInputStream
OutputStream
FileOutputStream
BufferedOutputStream
字符流://记得flush()
Reader
FileReader
BufferedReader
Writer
FileWriter(父outputstreamwriter)
BufferedWriter
FileOutputStream写出数据
A:操作步骤
a:创建字节输出流对象
b:调用write()方法
c:释放资源 //通知系统释放相关资源,让流对象成为垃圾
FileOutputStream fos = new FileOutputStream("fos.txt");
fos.write("hello".getBytes());
fos.close();
FileInputStream读取数据
A:操作步骤
a:创建字节输入流对象
b:调用read()方法
c:释放资源
FileInputStream fis = new FileInputStream("fos.txt");
//方式1
int by = 0;
while((by=fis.read())!=-1) {
System.out.print((char)by);
}
//方式2
byte[] bys = new byte[1024];
int len = 0;
while((len=fis.read(bys))!=-1) {
System.out.print(new String(bys,0,len));
}
fis.close();
字符流特殊用法:1.newLine()根据系统来决定是否换行,2.readLine()一次读取一行数据
字符流在关闭之前务必记得刷新,flush()