Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.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 如何使用UTF-8格式的文件作为.srt文件在mediaplayer中显示字幕?_Java_File_Utf 8_Indic_Srt - Fatal编程技术网

Java 如何使用UTF-8格式的文件作为.srt文件在mediaplayer中显示字幕?

Java 如何使用UTF-8格式的文件作为.srt文件在mediaplayer中显示字幕?,java,file,utf-8,indic,srt,Java,File,Utf 8,Indic,Srt,我在写文件方面遇到了一个问题。当我使用UTF-8格式在文件中编写孟加拉语和英语时,该文件正好包含我编写的内容。 但问题是,当我要使用这个文件作为.srt文件来在媒体播放器中显示视频的字幕时 媒体播放器不能显示孟加拉语字幕,而是显示一些英语和一些符号 但是当我将我的文件(我在其中写入)的内容复制到其他文件时, 然后使用另一个文件,媒体播放器可以准确地显示我在文件中写入的内容 比如说孟加拉语,英语 我的问题是为什么第一个文件不能做和第二个文件相同的事情。 如何在我可以使用第一个文件的代码中消除这个问

我在写文件方面遇到了一个问题。当我使用UTF-8格式在文件中编写孟加拉语和英语时,该文件正好包含我编写的内容。 但问题是,当我要使用这个文件作为.srt文件来在媒体播放器中显示视频的字幕时

媒体播放器不能显示孟加拉语字幕,而是显示一些英语和一些符号

但是当我将我的文件(我在其中写入)的内容复制到其他文件时, 然后使用另一个文件,媒体播放器可以准确地显示我在文件中写入的内容 比如说孟加拉语,英语

我的问题是为什么第一个文件不能做和第二个文件相同的事情。 如何在我可以使用第一个文件的代码中消除这个问题

BufferedWriter out = new BufferedWriter(
       new OutputStreamWriter(
                  new FileOutputStream(file), "UTF8"));
      int size=1;
      for(Tableclass variable:tablevector)
      {
            out.write(String.valueOf(size));
            out.newLine();
            out.write(variable.Starttime);
            out.write(" --> ");
            out.write(variable.Endtime);
            out.newLine();
            out.write(variable.Text);
            out.newLine();
            out.newLine();
          // output.format("%d\n%s --> %s\n%s\n\n",size,variable.Starttime,variable.Endtime,variable.Text);

        size++;
      }
      out.close();

您可以使用UTF16而不是UTF8,那么第一个文件就可以工作了

BufferedWriter out = new BufferedWriter(
   new OutputStreamWriter(
              new FileOutputStream(file), "UTF16"));
  int size=1;
  for(Tableclass variable:tablevector)
  {
        out.write(String.valueOf(size));
        out.newLine();
        out.write(variable.Starttime);
        out.write(" --> ");
        out.write(variable.Endtime);
        out.newLine();
        out.write(variable.Text);
        out.newLine();
        out.newLine();
      // output.format("%d\n%s --> %s\n%s\n\n",size,variable.Starttime,variable.Endtime,variable.Text);

    size++;

  }
  out.close();