zoukankan      html  css  js  c++  java
  • 如何用java实现语音播报?

    1.用Java实现语音播报,分为四步①音响;②调节语速;③调节音量;④执行对象;⑤执行朗读;

    package net.yuying;
    /**
     * 一个用java代码实现 语音播报示例
     * 
     */
    
    import com.jacob.activeX.ActiveXComponent;//如此处报错,可能是jar的问题  可能要到网上下一个jacob试试
    import com.jacob.com.Dispatch;//如此处报错,可能是jar的问题  可能要到网上下一个 jacob试试
    import com.jacob.com.Variant;//如此处报错,可能是jar的问题  可能要到网上下一个 jacob试试
    import java.io.*;
    
    public class Test1 {
    
        // 程序入口
        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));
                }
    
                xj.safeRelease();
                bf.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
                sap.safeRelease();
            }
    
        }
    
    }

     注意:如果导入前3行错误,应该是jar的问题,可能要到网上下一个 jacob安装可解决!(https://mvnrepository.com/artifact/com.jacob/jacob/1.10)附上下载地址

  • 相关阅读:
    angularjs
    HTML5
    Java Concurrency —— 《Java并发编程实战》读书笔记
    java IO
    Struts2 文件上传下载
    SQL join
    Annotation
    if表达式
    Ext js 下拉框下拉的同时输入模糊查询
    JSP如何把一个页面的值传到另一个页面
  • 原文地址:https://www.cnblogs.com/abcdjava/p/10852376.html
Copyright © 2011-2022 走看看