1. 程式人生 > 其它 >用Java讀取檔案文字並語音播報

用Java讀取檔案文字並語音播報

1、引入第三方jar包 jacob.jar

2、講第三方依賴 dll檔案 置於jdk安裝目錄下(JAVA_HOME\bin)

/**
 * 一個用java程式碼實現 語音播報示例
 */

//如此處報錯,可能是jar的問題  可能要到網上下一個jacob試試
import com.jacob.activeX.ActiveXComponent;
//如此處報錯,可能是jar的問題  可能要到網上下一個 jacob試試
import com.jacob.com.Dispatch;
//如此處報錯,可能是jar的問題  可能要到網上下一個 jacob試試
import com.jacob.com.Variant;
import java.io.*; public class VoicePlay { // 程式入口 public static void main(String[] args) { try { voice(); } catch (IOException e) { } } public static void voice() throws IOException { // 拿到音響 ActiveXComponent sap = new ActiveXComponent("sapi.SpVoice");
// 找到本地要朗讀的檔案 try { File srcFile = new File("E:/b.txt"); // 獲取文字文件的內容 FileReader flie = new FileReader(srcFile); // 從快取區拿到資料 BufferedReader bf = new BufferedReader(flie); // 拿到緩衝區的資料 String content = bf.readLine();
// 測試一下 有沒有拿到資料 System.out.println(content); // 調節語速 音量大小 sap.setProperty("Volume", new Variant(100)); sap.setProperty("Rate", new Variant(0)); Dispatch xj = sap.getObject(); // while (content != null) { // Dispatch.call(xj, "Speak", new Variant(content)); // } // 執行朗讀 沒有讀完就繼續讀 Dispatch.call(xj, "Speak", new Variant(content)); xj.safeRelease(); bf.close(); } catch (FileNotFoundException e) { e.printStackTrace(); sap.safeRelease(); } } }

第三方依賴下載地址(已上傳部落格園 jacob-1.20.zip)

部落格園下載:https://files-cdn.cnblogs.com/files/blogs/666773/jacob-1.20.zip

github下載:https://github.com/freemansoft/jacob-project/releases

參考

https://www.cnblogs.com/abcdjava/p/10852376.html

https://blog.csdn.net/xiwu1616/article/details/52311158