Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在不丢失重音的情况下,将.txt文件(ANSI编码)转换为.Arff_Java_Netbeans_Weka_Ansi - Fatal编程技术网

Java 在不丢失重音的情况下,将.txt文件(ANSI编码)转换为.Arff

Java 在不丢失重音的情况下,将.txt文件(ANSI编码)转换为.Arff,java,netbeans,weka,ansi,Java,Netbeans,Weka,Ansi,我很难找到如何将ANSI编目中的.txt文件转换为weka中的.arff文件,而不会在转换过程中丢失一些重音和单词的含义。我在读西班牙语的文章,问题是有重音的单词转换不好,因为有重音的字母是这样转换的 我的原始.txt |.arff文件转换结果 矿工�a 字母“í”在这个过程中丢失了 我现在的代码是这个(代码由weka大学提供) public Instances createDataset(String directoryPath)引发异常{ FastVector atts=新的FastVect

我很难找到如何将ANSI编目中的.txt文件转换为weka中的.arff文件,而不会在转换过程中丢失一些重音和单词的含义。我在读西班牙语的文章,问题是有重音的单词转换不好,因为有重音的字母是这样转换的

我的原始.txt |.arff文件转换结果 矿工�a

字母“í”在这个过程中丢失了

我现在的代码是这个(代码由weka大学提供)

public Instances createDataset(String directoryPath)引发异常{
FastVector atts=新的FastVector(2);
atts.addElement(新属性(“filename”,(FastVector)null));
atts.addElement(新属性(“contents”,(FastVector)null));
实例数据=新实例(“文本文件中的文件”+目录路径,附件,0);
文件目录=新文件(目录路径);
String[]files=dir.list();
对于(int i=0;i
}

我正在使用Netbeans从计算机中的文件强制转换文件。 你可能会认为我在这一页的其他帖子上问了同样的问题,但实际上我不是这样,因为我真正需要的是一个能正确转换西班牙语口音的转换器

我曾尝试将Netbeans中的编码更改为UTF-8和ANSI,但没有一个解决方案对我有效(我转到Netbeans8.1-->etc-->Netbeans.conf中的配置文件,并在那里添加了-J-Dfile.encoding=UTF-8,在Netbeans\u default\u options=..行中,但仍然不起作用).我对这个问题感到有点沮丧


在我失去理智后,我找到了一个部分解决方案。事实上,这个解决方案不是真正的解决方案,所以我希望有一天有人会回答一些可能拯救数据挖掘世界的问题。解决方案包括将文本保存在UTF-8中而不使用BOM(UTF-8 sin BOM)。您还必须配置Netbeans以读取UTF8,正如我上面所解释的。

我遇到了这个问题,我的解决方案是编码到ANSI

我用记事本++

步骤:

  • 打开你的文件

  • 转到顶部面板

  • 在ANSI中编码->编码


    • 我遇到了这个问题,我的解决方案是编码到ANSI

      我用记事本++

      步骤:

      • 打开你的文件

      • 转到顶部面板

      • 在ANSI中编码->编码

      public Instances createDataset(String directoryPath) throws Exception {
      
      FastVector atts = new FastVector(2);
      atts.addElement(new Attribute("filename", (FastVector) null));
      atts.addElement(new Attribute("contents", (FastVector) null));
      Instances data = new Instances("text_files_in_" + directoryPath, atts, 0);
      
      File dir = new File(directoryPath);
      String[] files = dir.list();
      for (int i = 0; i < files.length; i++) {
        if (files[i].endsWith(".txt")) {
      try {
        double[] newInst = new double[2];
        newInst[0] = (double)data.attribute(0).addStringValue(files[i]);
        File txt = new File(directoryPath + File.separator + files[i]);
        // meto codigo nuevo aqui dentro
      
      
        // hasata aqui
        InputStreamReader is;
        is = new InputStreamReader(new FileInputStream(txt));
        StringBuffer txtStr = new StringBuffer();
        int c;
        while ((c = is.read()) != -1) {
          txtStr.append((char)c);
          // s pstir de aqui contamino yo el codigo
           // System.out.println("Sale " + is.toString();
      
        }
        newInst[1] = (double)data.attribute(1).addStringValue(txtStr.toString());
        data.add(new Instance(1.0, newInst));
      } catch (Exception e) {
        //System.err.println("failed to convert file: " + directoryPath + File.separator + files[i]);
      }
        }
      }
      return data;