package beans.excel
import java.io.IOException
import java.io.OutputStream
import jxl.Workbook
import jxl.write.Label
import jxl.write.WritableSheet
import jxl.write.WritableWorkbook
import jxl.write.WriteException
public class SimpleExcelWrite {
public void createExcel(OutputStream os) throws WriteException,IOException{
//创建工作薄
WritableWorkbook workbook = Workbook.createWorkbook(os)
//创建新的一页
WritableSheet sheet = workbook.createSheet("First Sheet",0)
//创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
Label xuexiao = new Label(0,0,"学校")
sheet.addCell(xuexiao)
Label zhuanye = new Label(1,0,"专业")
sheet.addCell(zhuanye)
Label jingzhengli = new Label(2,0,"专业竞争力")
sheet.addCell(jingzhengli)
Label qinghua = new Label(0,1,"清华大学")
sheet.addCell(qinghua)
Label jisuanji = new Label(1,1,"计算机专业")
sheet.addCell(jisuanji)
Label gao = new Label(2,1,"高")
sheet.addCell(gao)
Label beida = new Label(0,2,"北京大学")
sheet.addCell(beida)
Label falv = new Label(1,2,"法律专业")
sheet.addCell(falv)
Label zhong = new Label(2,2,"中")
sheet.addCell(zhong)
Label ligong = new Label(0,3,"北京理工大学")
sheet.addCell(ligong)
Label hangkong = new Label(1,3,"航空专业")
sheet.addCell(hangkong)
Label di = new Label(2,3,"低")
sheet.addCell(di)
//把创建的内容写入到输出流中,并关闭输出流
workbook.write()
workbook.close()
os.close()
}
}
程序如下:<span style="color:#990000">
</span>File file1 = new File("/home/a123/a")
if (file1.exists()) {
System.out.println("存在文件夹a")
} else {
file1.mkdir()// 文件夹的创建 创建文件夹/home/a123/a
}
File file2 = new File("/home/a123/a/test")
if (file2.exists()) {
System.out.println("存在文件夹或者文件test")
} else {
try {
file2.createNewFile()// 文件的创建,注意与文件夹创建的区别
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
}
/**
* 最简单的文件读写方法是使用类FileWriter
* (它的父类依次是java.io.OutputStreamWriter——>java.io.Writer——>java.lang.Object )
*/
// 下面是向文件file2里面写数据
try {
FileWriter fileWriter = new FileWriter(file2)
String s = new String("This is a test! \n" + "aaaa")
fileWriter.write(s)
fileWriter.close()// 关闭数据流
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
/*
* 这样写数据的话,是完全更新文件test里面的内容,即把以前的东西全部删除,重新输入。
* 如果不想删除以前的数据,而是把新增加的内容增添在文件末尾处。只需要在创建FileWriter对象时候,使用另外一个构造函数即可:
* FileWriter fileWriter=new FileWriter(file2,true)
*/
// 下面是从文件file2读东西
try {
FileReader fileReader = new FileReader(file2)
String s = null
char ch
try {
char[] c = new char[100]
fileReader.read(c,0,2)// 具体想得到文件里面的什么值(单个char?int?还是String?),
System.out.println(c)
fileReader.close()
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
/**
* 具体想得到文件里面的什么值(单个char?int?还是String?),需要知道不通read的不同用法:
* 1. int read() 读取单个字符。
* 2. int read(char[] cbuf) 将字符读入数组。可以再将字符型数组转化位字符串
* 3. int read(char[] cbuf,int off,int len) 将字符读入数组的某一部分。
* 这三个方法都返回一个int值,作用是:读取的字符数,如果已到达流的末尾,则返回 -1.
*/
}