• 中文
    • English
  • 注册
  • 查看作者
  • 使用Java的IO操作,提取全世界所有的三位域名后缀

    一.  前言

    最近又想注册域名,便从TLD List 中下载了已经收录的全世界所有的域名后缀,然后使用Java的IO相关操作,将所有的三位域名后缀提取了出来。先给出下载文件:

    所有域名后缀
    27.61 KB,下载次数:0[记录]
    暂无描述

    二.  代码

    大体的步骤如下:

    1.  先遍历整个文件

    2.  遍历的时候判断该文件的每一行内容长度,是否是x位,如果是,则存储在StringBuffer当中

    3.  将遍历完成的StringBuffer写入到本地

    import java.io.*;
    import java.util.ArrayList;
    import java.util.List;
    
    /**
     * 读取所有的域名,提取出三位的域名
     */
    
    public class Codes {
        private static int count;//代码总行数
    
        public static void main(String[] args) throws IOException {
    //        获取要读取的文件,所有的域名都存在这个文件里
            File inFile = new File("C:\\Users\\zhang\\Desktop\\1.txt");
    //        存取结果
            File outFile = new File("C:\\Users\\zhang\\Desktop\\2.txt");
            collatingFiles(inFile,outFile);
    
            System.out.println("三位的域名共有:" + count);
        }
    
        public static void collatingFiles(File inFile,File outFile) throws IOException {
    //        从字符输入流中读取文本
            BufferedReader br = new BufferedReader(new FileReader(inFile));
    //        存储结果
            FileOutputStream os = new FileOutputStream(outFile);
            String s = null;
            StringBuffer stringBuffer = new StringBuffer();
            while ((s = br.readLine()) != null) {
    //            每次循环s都保存着一行的内容,如果要获取n位的后缀,则if中写 == n+1
                if (s.length() == 4) {
    //                换行显示
                    s += "\n";
                   stringBuffer.append(s);
                    count++;
                }
            }
    //        将StringBuffer转换为字节数组
            byte[] bytes =  String.valueOf(stringBuffer).getBytes();
            os.write(bytes);
            br.close();
    
        }
    
    
    }

    山东省
  • 0
  • 0
  • 0
  • 1.5k
  • 请登录之后再进行评论

    登录
    单栏布局 侧栏位置: