首页 > 其他 > 详细

tracker格式从bt客户端适用转换为aria适用

时间:2020-05-12 01:17:25      阅读:81      评论:0      收藏:0      [点我收藏+]

一、前言

近来在树莓派上搭建了一个aria下载服务器,在配置bt-tracker时发现网上的tracker列表很多都是给客户端用的单行格式文件,有些tracker有五六百行,自己手动操作显然不现实,于是写了个小程序用来自动转换格式。

二、代码


import java.util.*;
import java.io.*;

public class AriaTracker {
	public static void main(String[] args) {
		Scanner varScanner = new Scanner(System.in);
		System.out.print("input the tracker-list‘s path: ");
		String from = varScanner.nextLine();
		System.out.print("input the list‘s filename:");
		String filename = varScanner.nextLine();
		String temp = convert(from+filename);
                if(temp == null){
                    System.out.println("error! the program will exit!");
                    System.exit(-1);
                }
		try {
			BufferedWriter out = new BufferedWriter(new FileWriter(from+filename+"_aria.txt",true));
			out.write(temp);
			out.close();
		}catch(IOException e) {
			e.printStackTrace();
		}
		System.out.println("Format converted successfully");
	}
	
	private	static String convert(String filepath) {
        try {
            File file = new File(filepath);
            String res="";
            if (file.isFile() && file.exists()) {
                InputStreamReader read = new InputStreamReader(new FileInputStream(file), "UTF-8");
                BufferedReader bufferedReader = new BufferedReader(read);
                String lineTxt = bufferedReader.readLine();
                while (lineTxt != null) {
                	if(lineTxt.equals(""))
                	{
                		lineTxt = bufferedReader.readLine();
                		continue;
                	}
                	res=res+lineTxt+",";
                	lineTxt = bufferedReader.readLine();
                }
                return res.substring(0,res.length()-1);
            }
        } catch (UnsupportedEncodingException | FileNotFoundException e) {
            System.out.println("Cannot find the file specified!");
            e.printStackTrace();
        } catch (IOException e) {
            System.out.println("Error reading file content!");
            e.printStackTrace();
        }
        return null;
    }
}

三、使用方法及注意事项

  1. 输入文件路径,路径要输全,以linux为例,假如文件在comixhe文件夹下,则输入:

/home/comixhe/

最后一个分隔符不要忘记输入。

  1. 输入文件名,假如文件叫tracker,就输入

tracker

有后缀要带后缀输入。

  1. 本程序是使用字符串一次性写入文件,如果tracker文件的字符数超过String限制会出错,对于我来说这个足够用,如果有需求请自行改动。

tracker格式从bt客户端适用转换为aria适用

原文:https://www.cnblogs.com/comixH/p/12873301.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!