在本篇文章里小编给大家整理了关于java简单实现用语音读txt文档的详细方法总结,有需要的朋友们参考下。
最近比较无聊,随便翻着博客,无意中看到了有的人用VBS读文本内容,也就是读几句中文,emmm,挺有趣的,实现也很简单,都不需要安装什么环境,直接新建txt文件,输入一些简单的vbs读文本的代码,然后将新建的文件后缀改为.vbs,然后双击一下就可以有效果了。。。。
于是我就想啊,java行不行呢?查了一些资料,还真的行,我就将我试验的过程说一下,就当作娱乐娱乐!
1.依赖
随便新建一个maven项目,导入依赖
com.hynnet
jacob
1.18
只导入依赖还不行,还要导入一个.dll文件,百度云链接:链接:https://pan.baidu.com/s/1YYYPIoPxrtuyKebJzabhlw 提取码:s62o ,可以看到有两个dll文件,由于我的电脑是64位的,于是我将上面那个dll文件复制一份到当前使用jdk的bin目录下
2.java代码实现
一个很简单的java代码实现,运行之后就会读出来了;
package com.wyq.day66;
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class Speak02 {
//用电脑自带的语音读字符串str
public static void main(String[] args) {
String str = "你好,我是java小新人!请叫我最帅的帅锅";
ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");
Dispatch sapo = sap.getObject();
try {
// 音量 0-100
sap.setProperty("Volume", new Variant(100));
// 语音朗读速度 -10 到 +10
sap.setProperty("Rate", new Variant(0));
// 执行朗读
Dispatch.call(sapo, "Speak", new Variant(str));
} catch (Exception e) {
e.printStackTrace();
} finally {
sapo.safeRelease();
sap.safeRelease();
}
}
}