首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将文件编码为UTF-8

将文件编码为UTF-8
EN

Stack Overflow用户
提问于 2012-11-20 19:24:40
回答 1查看 181关注 0票数 0

帮助解决这里的问题是脚本在互联网上搜索并保存,但他用错误的编码保存它们,并且对于UTP-8,这里是您可以在程序编码中插入的地方,请插入(当页面保存时,其内容也是损坏的字符)

代码语言:javascript
复制
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Scanner;


public class url{
  public static void main(String[] args) {
        try {
            URL PageUrl;
            URLConnection GetConn = null;
            GetConn = null;
            Scanner sc = new Scanner(new File("C:\\test\\url.txt")); 
            String htmlPage;
            while (sc.hasNext()){
                htmlPage = sc.nextLine();
                PageUrl = new URL(htmlPage);
                GetConn = PageUrl.openConnection();
                GetConn.connect();
                // establish connection:
                Scanner scUrl = new Scanner(GetConn.getInputStream());

                StringBuffer sb = new StringBuffer();
                while(scUrl.hasNext()){
                    sb.append(scUrl.nextLine());
                }
                scUrl.close();

                String htmlFileName = ("C:\\test\\1\\"+title(sb.toString())+".html");
                FileWriter FWriter = new FileWriter(htmlFileName);
                BufferedWriter BWriter = new BufferedWriter(FWriter);

                BWriter.write(sb.toString());
                BWriter.close();
            }// end try
            sc.close();
        }
        catch (IOException io) {
            System.out.println(io);
        }
    }

    private static String title(String str){

        return str.substring(str.indexOf("title>")+6, str.indexOf("</title>"));
    }

}
EN

回答 1

Stack Overflow用户

发布于 2012-11-20 19:29:38

代码语言:javascript
复制
new Scanner(GetConn.getInputStream());

从你的网页获取一个输入流(面向字节)。但是它对JVM使用缺省编码,并且您看到的不是实际页面本身的编码。

我可能会使用像JTidy这样的库来正确地解码/解析HTML,然后向它请求页面标题。上面的代码可能非常脆弱。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13472154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档