读写
public class Product
{
private String id;
private String name;
private float price;
private int nums;
public Product()
{
}
public Product(String id, String name, float price, int nums)
{
this.id = id;
this.name = name;
this.price = price;
this.nums = nums;
}
public String getId()
{
return id;
}
public void setId(String id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public float getPrice()
{
return price;
}
public void setPrice(float price)
{
this.price = price;
}
public int getNums()
{
return nums;
}
public void setNums(int nums)
{
this.nums = nums;
}
public String toString()
{
return this.id+","+this.name+","+this.price+","+this.nums;
}
}
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
public class Demo
{
public static void main(String[] args) throws Exception
{
//读入数据并存到列表中
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("C:/a/a.txt"), "UTF-8"));
String line = " ";
ArrayList<Product> list = new ArrayList<>();
while((line = br.readLine()) != null)
{
String[] arr = line.split(",");
Product p = new Product(arr[0], arr[1], Float.parseFloat(arr[2]), Integer.parseInt(arr[3]));
list.add(p);
}
br.close();
//将数据按照价格高低排序
for (int i=0; i<list.size()-1; i++)
{
for(int j=0; j<list.size()-i-1; j++)
{
if (list.get(j).getPrice() < list.get(j+1).getPrice())
{
Product tmp = list.get(j);
list.set(j, list.get(j+1));
list.set(j+1, tmp);
}
}
}
for (Product p:list)
{
System.out.println(p);
}
System.out.println("====================================================");
//将数据存到txt中,true参数是以追加的形式写入数据,否则是覆盖
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("C:/a/price_order.txt", true)));
for (Product p:list)
{
String s = p.toString();
System.out.println(s);
bw.write(s+"\n");
}
bw.close();
}
}
====================================================
文件系统的操作
创建、删除
//创建文件夹
File f = new File("C:/a/b/c");
f.mkdirs(); //可以递归创建文件夹,如果没有s则不行
//创建文件
File f1 = new File("C:/a/b/c/123.txt");
f1.createNewFile();
//删除文件
f1.delete();