您的位置:

java文件批量转码,Java批量上传文件

本文目录一览:

已经是GBK编码的Eclipse写的项目 怎么转到UTF8而不乱码

1、基本思路:一个一个打开修改效率低,这个小需求也不用自己写程序实现。充分利用UltraEdit的强大能力。先用一个办法,一次性全部打开工程下的java文件,再用一个办法,一次性更改保存。一次性全部打开的方法在UE的快速打开功能中就有,但需要一点操作技巧。一次性更改保存我开始考虑用其录制宏的方式实现,但我的UE15.1这个版本,可能有一个BUG,录制ANSI转UTF-8的命令失败,只好用另一个办法,即先将ANSI转UTF-8的命令设置成一个快捷键,如CTRL+ALT+U,再录制一个保存文件再关闭文件的宏,并将其设置快捷键,如CTRL+ALT+I,这样只需要一次性全部打开java文件后,按住CTRL+ALT不放,反复交替按U和I,即可改好,虽然不完美(因为那个录制的BUG),但1分钟内,也可以改好200个java文件。

2、具体操作:打开UE,先设置好ANSI转UTF-8命令的快捷键,在UE的高级-配置中,打开配置选项,在查找中输入“键”便可找到键映射的设置,双击然后在其命令中找到FileConvASCIIToUTF8(Unicode Editor),在按下(多个)热键下的文本框中点击鼠标,然后按CTRL+ALT+U设置成快捷键。之后,一次性打开全部java文件,从UE的文件中,用快速打开菜单,在弹出的对话框中,如果显示的默认路径不是你的工程路径,那么你可以任意打开一个你工程目录下的文本文件,这样就让UE记住这个路径了,因为此处不能任选路径,我们希望一次性打开所有文件,而不是一个一个打开,当UE记住这个路径后,在上面的文本框中输入*.java,在最下边的checkbox中,勾选包括子目录,再点击打开,这样就可将工程下的所有java文件一次性打开。第三步就是录制一个宏,实现保存和关闭文件,并将其设置快捷键如CTRL+ALT+I,这个比较简单,在此略过。最后一步就是按快捷键了。

java 怎么gbk转码utf-8

方法一:

思路:先转为Unicode,然后转为GBK

String utf8 = new String(t.getBytes( "UTF-8"));  

System.out.println(utf8);  

String unicode = new String(utf8.getBytes(),"UTF-8");   

System.out.println(unicode);  

String gbk = new String(unicode.getBytes("GBK"));  

  

System.out.println(gbk);

方法二:

public static void main(String[] args) {

        String str="字符串编码转换";

        try {

          byte[] temp=str.getBytes("utf-8");//这里写原编码方式

            byte[] newtemp=new String(temp,"utf-8").getBytes("gbk");//这里写转换后的编码方式

            String newStr=new String(newtemp,"gbk");//这里写转换后的编码方式

            System.out.println(newStr);

        } catch (UnsupportedEncodingException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

java文件读取内容转码

读取的文件流如果是read(读取字节流的时候,中文就会是乱码)方法,所以现在全都是听过readline方式进行的读取。举例:

可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。

BufferedReader bre = null;

try {

String file = "D:/test/test.txt";

bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流

while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环

{

System.out.println(str);//原样输出读到的内容

};

bre.close(),//关闭流,否则bre流会一直存在,直到程序运行结束。

除此之外,java文件读取的时候有中文就很出现乱码,通常获取到的文件中通常都是“iso8859-1”格式,需要转换为“UTF-8”格式。

如:String str = new String(str.getByte("iso8859-1"),"UTF-8");进行下强制转换后在进行读取即可。

备注:通常格式有GBK、UTf-8、iso8859-1、GB2312,如果上面的强制转换不成功,依次进行这些格式的尝试,肯定是可以解决问题的。

如何批量的把所有文件夹中所有的扩展名为.java的文件转为.txt文件方便阅览!

层层嵌套的话就要使用递归了 我给你写一个程序吧

这种方法是把所满足需求的文件都复制到另一个文件夹  如果要在源文件的基础上直接重命名的话就更简单了 用File 类的renameTo()方法  不用复制  看楼主需求了

import java.io.*;

public class Test{

 public static void main(String[] arags)throws Exception{

  File src = new File("C:\\Program Files\\Java");//这里传你文件夹源路径

  File tar = new File("d:\\test");//这里传所有转换后的文件存放路径

  tar.mkdirs();//创建这个目录

  find(src,tar);

 }

 public static void find(File file,File tar)throws Exception{

  File[] files = file.listFiles();

  if(files == null)return;

  for(File f : files){

   if(f.isDirectory())

    find(f,tar);

   String name = f.getName().toLowerCase();

   if(name.endsWith(".java")){

    String str = name.replace(".java",".txt");

    File newTar = new File(tar,str);

    copy(f,newTar);

    System.out.println(name);

   }

  }

 }

 public static void copy(File src,File tar)throws Exception{

  int x = 512  10;//定义缓冲区大小为512KB

  BufferedInputStream bis = new BufferedInputStream(new FileInputStream(src),x);

  BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(tar),x);

  int len;

  byte[] data = new byte[x];

  while((len = bis.read(data,0,x)) != -1)

   bos.write(data,0,len);

  bos.close();

  bis.close();

 }

}