Java输入输出处理技术1
1.保存用户输入到文件
从键盘读入一行字符,写到文件output.txt中去。
package io;
import java.io.*;
public class MyFileOutput { public static void main(String[] args) {
FileInputStream fin;
FileOutputStream fout;
int ch;
try {
fin=new FileInputStream(FileDescriptor.in);
fout=new FileOutputStream("output.txt");
System.out.println("请输入一行字符:");
while((ch=fin.read())!='\r')
fout.write(ch);
fin.close();
fout.close();
System.out.println("文件写入成功!");
} catch (FileNotFoundException e) {
System.out.println("不能创建文件!");
}catch(IOException e){
System.out.println("输出流有误!");
} } }
2.显示文件内容
显示文本文件的内容。
package io;
import java.io.*;
public class TypeFile { public static void main(String[] args) {
FileInputStream fin;
FileOutputStream fout;
int ch;
if(args.length<1){
System.out.println("请指定文件名!");
return;
}
try {
fin=new FileInputStream(args[0]);
fout=new FileOutputStream(FileDescriptor.out);
while((ch=fin.read())!=-1)
fout.write(ch);
fin.close();
fout.close();
} catch (FileNotFoundException e) {
System.out.println("文件没有找到!");
} catch (IOException e) {
System.out.println("输入流有误!");
} } }
3.文件的复制
文件复制程序。
package io;
import java.io.*;
public class CopyFile { public static void main(String[] args) {
FileInputStream fin;
FileOutputStream fout;
int ch;
if(args.length!=2){
System.out.println("参数格式不对,应该为:java CopyFile 原文件名 目标文件名");
return;
}
try {
fin=new FileInputStream(args[0]);
fout=new FileOutputStream(args[1]);
while((ch=fin.read())!=-1)
fout.write(ch);
fin.close();
fout.close();
System.out.println("文件复制成功!");
} catch (FileNotFoundException e) {
System.out.println("文件没有找到!");
} catch (IOException e) {
System.out.println("读写文件有误!");
} } }
4.顺序输入流
顺序输入流示例。
package io;
import java.io.*;
import java.util.*; public class FileList implements Enumeration{
String MyFileList[];
int current=0;
public FileList(String filelist[]){
MyFileList=filelist;
} public FileList(){
MyFileList=null;
} public boolean hasMoreElements() {
if(MyFileList==null)
return false;
if(current<MyFileList.length)
return true;
else
return false;
} public Object nextElement() {
FileInputStream in=null;
if(!hasMoreElements())
return null;
try {
in = new FileInputStream(MyFileList[current]);
current++;
} catch (FileNotFoundException e) {
System.out.println("Can't open file:"+MyFileList[current]);
}
return in;
} }
package io;
import java.io.*;
import java.util.*;
public class MySequenceIn { public static void main(String[] args) {
FileList myList = new FileList(args);
SequenceInputStream sin;
FileOutputStream fout;
int data;
try {
sin = new SequenceInputStream(myList);
fout = new FileOutputStream(FileDescriptor.out);
while((data=sin.read())!=-1)
fout.write(data);
sin.close();
fout.close();
} catch (FileNotFoundException e) {
System.out.println("文件无法打开");
} catch (IOException e) {
System.out.println("读写文件有误");
} } }
5.管道输入输出流
管道输入输出流示例。
package io;
import java.io.*;
//本线程类用于发送数据
public class ThreadOut extends Thread {
PipedInputStream pin;
PipedOutputStream pout;
byte data[]={1,2,3};
public ThreadOut(PipedInputStream in, PipedOutputStream out){
pin = in;
pout = out;
} public void run(){
try {
pout.write(data);
} catch (IOException e) {
// e.printStackTrace();
}
}
}
package io;
import java.io.*;
//本线程类用于接收数据
public class ThreadIn extends Thread {
PipedInputStream pin;
PipedOutputStream pout;
int data;
public ThreadIn(PipedInputStream in, PipedOutputStream out){
pin = in;
pout = out;
} public void run(){
try {
while((data=pin.read())!=-1)
System.out.println(data);
} catch (IOException e) {
// e.printStackTrace();
}
}
}
package io;
import java.io.*;
public class MyPipedIO { public static void main(String[] args) {
PipedInputStream mypin=null;
PipedOutputStream mypout=null;
try {
mypin = new PipedInputStream();
mypout = new PipedOutputStream();
mypin.connect(mypout);
ThreadOut tout = new ThreadOut(mypin, mypout);
ThreadIn tin = new ThreadIn(mypin, mypout);
tout.start();
tin.start();
} catch (IOException e) {
System.out.println("无法连接管道");
} } }
6.过滤输入输出流
数据输入输出流使用示例。
package io;
import java.io.*;
public class MyDataIO { public static void main(String[] args) {
DataOutputStream dout;
DataInputStream din;
try {
dout = new DataOutputStream(new FileOutputStream("testfile.dat"));
dout.writeInt(100);
dout.writeLong(123456789);
dout.writeDouble(1.23456);
dout.writeFloat(1.2f);
dout.writeBoolean(true); din = new DataInputStream(new FileInputStream("testfile.dat"));
System.out.println(din.readInt());
System.out.println(din.readLong());
System.out.println(din.readDouble());
System.out.println(din.readFloat());
System.out.println(din.readBoolean());
} catch (FileNotFoundException e) {
System.out.println("没有找到文件!");
} catch (IOException e) {
System.out.println("无法正常创建输入输出流数据!");
} } }
Java输入输出处理技术1的更多相关文章
- Java输入输出处理技术2
7.从键盘输入 从键盘输入一行字符,并显示到屏幕上. package io; import java.io.*; public class ReadAndWrite { public static v ...
- java的poi技术读取Excel数据到MySQL
这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 ...
- Java 加解密技术系列文章
Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列 ...
- java的JSP技术
java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...
- java的poi技术写Excel的Sheet
在这之前写过关于java读,写Excel的blog如下: Excel转Html java的poi技术读,写Excel[2003-2007,2010] java的poi技术读取Excel[2003-20 ...
- Java Web编程技术学习要点及方向
学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...
- java的poi技术读,写Excel[2003-2007,2010]
在上一篇blog:java的poi技术读取Excel[2003-2007,2010] 中介绍了关于java中的poi技术读取excel的相关操作 读取excel和MySQL相关: java的poi技术 ...
- java的poi技术读取Excel[2003-2007,2010]
这篇blog主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx. 读取excel和MySQL相关: ja ...
- java编解码技术,netty nio
对于java提供的对象输入输出流ObjectInputStream与ObjectOutputStream,可以直接把java对象作为可存储 的字节数组写入文件,也可以传输到网络上去.对与java开放人 ...
随机推荐
- hdoj1050 Moving Tables(贪心)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1050 题意 有一条走廊,走廊两边各有200个房间,一边的房间编号是奇数,另一边是偶数.现在有n个箱子需 ...
- CF582A GCD Table
A. GCD Table time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- JAVAEE——SpringMVC第二天:高级参数绑定、@RequestMapping、方法返回值、异常处理、图片上传、Json交互、实现RESTful、拦截器
1. 课前回顾 https://www.cnblogs.com/xieyupeng/p/9093661.html 2. 课程计划 1.高级参数绑定 a) 数组类型的参数绑定 b) List类型的绑定 ...
- 论 异常处理机制中的return关键字
Java中,执行try-catch-finally语句需要注意: 第一:return语句并不是函数的最终出口,如果有finally语句,这在return之后还会执行finally(return的值会暂 ...
- Python发送带附件的邮件
看别人的博客就不要在往别人的邮箱里发东西了行不行, 有点素质可以吗!!! 写出来分享还不知道珍惜!!!!! #-*-encoding:utf-8 -*- import os import smtpli ...
- Alpha7
难受
- 20162318 2018-2019-2《网络对抗技术》Exp1 PC平台逆向破解
一.实验目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另一个代码片段,getS ...
- 缓存处理后,F5刷新页面,css和js返回200,为什么不是304?
最近在Apache上做网站的静态资源缓存,但是各种配置之后,发现css和js返回的状态码都是200,为什么不是304? 找来找去在知乎上得到了答案. 来自知乎的一个回答 http://www.zhih ...
- django官方文档读书笔记
写在前面:这算是第二次读英文原文文档,第一次是读scrapy,感觉还是要做笔记,好记性不如烂笔头,现在已经忘了scrapy文档讲了什么了,心疼.以后要多读多写 经过半年的基础学习(懒,拖延)终于来到w ...
- VC 操作 EXCEL---插入工作表(Insert.Sheet)方法
看到的资料 http://bbs.csdn.net/topics/198565 自己总结一下 //插入到nIndex工作表之前 void InsertSheet(int nIndex) { sheet ...