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

      一.  前言

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

      所有域名后缀

      二.  代码

      大体的步骤如下:

      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.4k
    • 请登录之后再进行评论

      登录

      赞助本站

      • 支付宝
      • 微信
      • QQ

      感谢一直支持本站的所有人!

      单栏布局 侧栏位置: