java 拷贝文件和读取ini文件

package com.zryf.sotp;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;

public class CopyAndMove {
	
	public static void copy(File src, File dst) throws IOException {
		FileInputStream inStream = null;
		try {
			inStream = new FileInputStream(src);
			FileOutputStream outStream = null;
			try {
				outStream = new FileOutputStream(dst);
				FileChannel inChannel = inStream.getChannel();
				FileChannel outChannel = outStream.getChannel();
				inChannel.transferTo(0, inChannel.size(), outChannel);
			} finally {
				if (outStream != null)
				{
					outStream.flush();
					outStream.close();
				}
			}
		} finally {
			if (inStream != null)
				inStream.close();
		}
	}

	public static boolean move(File src, File dst) {
		try {
			copy(src, dst);
		} catch (IOException ex) {
			ex.printStackTrace();
			return false;
		}
		return src.delete();
	}
	public static String readFromFileByText(File file) throws IOException 
	{
		String line;
		StringBuffer sb = new StringBuffer();
		FileReader fr = new FileReader(file);
		BufferedReader br = new BufferedReader(fr);
		while ((line = br.readLine()) != null) {
			sb.append(line);
		}
		br.close();
		fr.close();
		return sb.toString();
	}

	public static boolean writeToFileByText(File file,String text) throws IOException 
	{
		FileWriter fw = new FileWriter(file);
		fw.write(text);
		fw.flush();
		fw.close();
		return true;
	}

	public static void main(String[] args) throws IOException {
		
		copy(new File("D:\\pojie\\packages.list"), new File("D:\\pojie\\test\\out1.txt"));
		move(new File("D:\\pojie\\test\\out1.txt"), new File("D:\\pojie\\test\\out2.txt"));
		System.out.println("ok");
	}

}
package com.zryf.sotp;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class IniFile {

	private Map<String, String> mIni = new HashMap<String, String>();

	public IniFile(File file) throws IOException {
		String line;
		Pattern pattern = Pattern.compile("\\s*([^=]*)=(.*)");
		FileReader fr = new FileReader(file);
		BufferedReader br = new BufferedReader(fr);
		while ((line = br.readLine()) != null)
			if (!line.startsWith("#")) {
				Matcher matcher = pattern.matcher(line);
				if (matcher.matches()) {
					String key = matcher.group(1).trim();
					String value = matcher.group(2).trim();
					mIni.put(key, value);
				}
			}
		br.close();
		fr.close();
	}

	public String get(String key, String defaultvalue) {
		return mIni.get(key);
	}
	public static void main(String[] args) throws IOException {
		IniFile iniFile=new IniFile(new File("c://test.ini"));
		String data=iniFile.get("ID", "1234");
		System.out.println(data);
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值