2016-09-12 5 views
0

私のプロジェクトではFreeTTS音声を使用しています。 JFileChooserを使用して、音声ファイルに音声を保存したいと思っています。私は、オーディオファイルを保存するボタンを追加したいと思います。今私は、テキストファイルを開き、JTextAreaとJTextAreaで書かれたテキストをtxtのファイルに保存する "Save File"ボタンに書き込む "Open File"私はプロジェクトにNetBeansを使用しています。JFileChooserを使用して、テキストから音声を音声ファイルに保存します。

The screenshot of the java application

//コードの保存テキストファイルの

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {           
    JFileChooser saver = new JFileChooser("./"); 
    int returnVal = saver.showSaveDialog(this); 
    File file = saver.getSelectedFile(); 
    BufferedWriter writer = null; 
    if (returnVal == JFileChooser.APPROVE_OPTION) 
    { 
     try 
      { 
       writer = new BufferedWriter(new FileWriter(file.getAbsolutePath()+".txt")); 
writer.write(jTextArea1.getText()); 
writer.close(); 
JOptionPane.showMessageDialog(this, "The Message was Saved Successfully!", 
      "Success!", JOptionPane.INFORMATION_MESSAGE); 
    } 
     catch (IOException e) 
      { 
     JOptionPane.showMessageDialog(this, "The Text could not be Saved!", 
      "Error!", JOptionPane.INFORMATION_MESSAGE); 
     } 
     } 
    } 

コードは、オーディオファイルを保存するための試みたが、同様にオープニングのテキストファイルのコードを

 private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {           
    // TODO add your handling code here: 
    JFileChooser saver = new JFileChooser("./"); 
    int returnVal = saver.showSaveDialog(this); 
    File file = saver.getSelectedFile(); 
    VoiceManager voiceManager = VoiceManager.getInstance(); 

     Voice saveVoice = voiceManager.getVoice(VOICENAME); 
     saveVoice.allocate(); 
     if (returnVal == JFileChooser.APPROVE_OPTION) 
     { 


     try { 
       audioPlayer = new SingleFileAudioPlayer(new FileWriter(file.getAbsolutePath()+AudioFileFormat.Type.WAVE)); 
       saveVoice.setAudioPlayer(audioPlayer); 
       saveVoice.speak(jTextArea1.getText()); 
       saveVoice.deallocate(); 
       audioPlayer.close(); 
       JOptionPane.showMessageDialog(this, "The Audio was Saved Successfully!", 
       "Success!", JOptionPane.INFORMATION_MESSAGE); 
     } 
     catch (IOException e) 
        { 
      JOptionPane.showMessageDialog(this, "The Text could not be Saved!", 
      "Error!", JOptionPane.INFORMATION_MESSAGE); 
        } 


      } 

     } 

を働いていなかった//ある。 私はなぜスクリーンショットを直接追加することができないのか、それに対するリンクを追加したという評判はあまりありません。

答えて

0

freetts音声用のオーディオプレーヤーとして設定されたSingleFileAudioPlayerのオブジェクトを使用して、ファイルに書き込むことができます。

あなたはこの質問に解決策を見つけることができます:それは働いたhow can i store output voice to an audio file in freetts

+0

おかげで今は任意の場所と名前にJFileChooserのを使用してオーディオファイルを保存します。私はそれを試みたが、それは動作していない。私はちょうど私がテキストファイルを保存するためにしたやり方でそれをやった。私は上記の質問にそのコードを追加した –

関連する問題