2017-10-04 4 views
1

Ich arbeite an einem Projekt und ich schreibe in eine Datei aus einer anderen Datei, aber ich möchte eine .VBS-Datei es wie TTS sagen. hier ist der Code für das ... AberLesen von Datei mit VBS und sagen Sie den Inhalt

Dim message, sapi 
Set sapi=CreateObject("This Text") 
sapi.Speak message 

Und dann die Worte „Dieser Text“ wird der Lautsprecher kommen.

Aber ich will nicht die Worte „Dieser Text“ kommen, habe ich es die Worte in einer TXT-Datei (tts_text.txt)

So braucht es zum Lesen einer Textdatei sagen wollen und speichern Sie das in einer Variablen und dann sollten die TTS die Variable lesen und sagen.

+0

https://stackoverflow.com/questions/ 854975/how-to-read-from-a-Text-Datei-Using-Vbscript – aphoria

+0

Ich habe gerade bemerkt [Sie haben Ihre letzte Frage gelöscht] (https://stackoverflow.com/questions/47166956/have- Zwei-Javascript-Sliders-zur-Arbeit-zur-gleichen-Zeit) - Ich glaube nicht, dass das Löschen notwendig war. Ich habe herausgefunden, warum Sie am Ende etwas hinzugefügt haben, was Bot-Spam zu sein scheint - Sie haben eine Editor-Nachricht ausgelöst, die mehr Details erfordert, und haben daher beschlossen, die Warnmeldung in die Frage einzutragen. Das war verwirrend! Wenn dies erneut passiert, denken Sie bitte darüber nach, welche weiteren Details Sie hinzufügen könnten - in diesem speziellen Fall brauchte es Details von dem, was Sie versucht haben. – halfer

Antwort

1

verwenden lesen/lernen über die Objekte und ihre Fähigkeiten:

Option Explicit 
Dim goFS : Set goFS = CreateObject("Scripting.FileSystemObject") 
Dim goVC : Set goVC = CreateObject("SAPI.SpVoice") 
goVC.Speak goFS.OpenTextFile(WScript.ScriptFullName).ReadAll() 
+0

danke, aber wo öffnet es tts_text.txt? Entschuldigung im neuen VBS –

+0

Ich möchte es öffnen und lesen und dann TTS sagen eine bestimmte TXT-Datei, seine tts_text.txt –

0

Sie einen Versuch für dieses Vbscript Beispiel geben kann:

Option Explicit 
Dim Contents,File,message 
File = "c:\tts_text.txt" 
Contents = "It didn’t work after mass shootings at a nightclub in Orlando,"&_ 
"college campuses in Virginia and Oregon, a church in Charleston,"&_ 
"or at a movie theater and high school in Colorado."&_ 
"Or after two lawmakers survived assassination attempts." & vbcrlf &_ 
"But after a gunman killed 58 people and wounded more than 500 at a Las Vegas concert," & vbcrlf &_ 
"Democrats are going to try again to revamp the nation’s gun laws." 
' We write this contents to the file 
WriteTextFile Contents, file, 0 
' We read the file contents and we store it into a variable message 
message = ReadFileText(File) 
' Now we can speak this message with SAPI object 
Speak_from_File message 
'********************************************************** 
Sub Speak_from_File(message) 
Dim Voice 
Set Voice = CreateObject("SAPI.SpVoice") 
Voice.Volume = 100 
Voice.Rate = 0 
Voice.Speak message 
End Sub 
'********************************************************** 
Sub WriteTextFile(sContent, sPath, lFormat) 
'lFormat -2 - System default, -1 - Unicode, 0 - ASCII 
With CreateObject("Scripting.FileSystemObject").OpenTextFile(sPath,2,True,lFormat) 
    .WriteLine sContent 
    .Close 
End With 
End Sub 
'********************************************************** 
Function ReadFileText(sFile) 
    Dim objFSO,oTS,sText 
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
    Set oTS = objFSO.OpenTextFile(sFile,1) 
    sText = oTS.ReadAll 
    oTS.close 
    set oTS = nothing 
    Set objFSO = nothing 
    ReadFileText = sText 
End Function 
'********************************************************** 
Verwandte Themen