2017-10-22 16 views
-2

나는 여기에 코드를 단순히 있습니다여기서 작동하지 않는 것은 무엇입니까? C# UWP 연설

using System; 
using Windows.UI.Xaml; 
using Windows.UI.Xaml.Controls; 
using System.Diagnostics; 
namespace Zad3 
{ 

public sealed partial class MainPage : Page 
{ 

    public MainPage() 
    { 

     this.InitializeComponent(); 
    } 

    private async void Button_Click(object sender, RoutedEventArgs e) 
    { 

     String text = System.IO.File.ReadAllText(@"C:\Users\source\repos\Lista3\zad3.txt"); 
     if (text != null) 
     { 
      MediaElement mediaElement = new MediaElement(); 
      var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer(); 
      Windows.Media.SpeechSynthesis.SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync(text); 
      mediaElement.SetSource(stream, stream.ContentType); 
      mediaElement.Play(); 
     } 
    } 

} 

}

그리고 난 XAML에서 하나 개의 버튼을 만들 수 있습니다. 버튼을 클릭하면 프로그램이 꺼집니다 ... 정상적인 문자열 (np. "Hello")에 대한 텍스트를 바꿀 때 내 프로그램이 완벽하게 작동합니다.

어떻게 복구하나요? 도와주세요. 나는 백만 가지 방법으로 그것을 시도했다. 나는이 언어로 초보자이다.

+1

가능한 복제 [음성 사운드에 텍스트 문자열을 변환하는 방법 (https://stackoverflow.com/questions/15387212/how-to-convert-text- string-to-speech-sound) – codebender

+0

링크는 문자열 용입니다. 내가 어떻게 할 수 있는지 알아. SpeechSynthesisStream에 file.txt를 추가하는 방법에 대한 정보가 필요합니다. – toja6755

+1

음성과 관련이 없습니다. [해당 파일에 대한 액세스 권한이 없습니다.] (https://docs.microsoft.com/ko -us/windows/uwp/files/file-access-permissions) –

답변

0

사용자 폴더 외의 다른 곳에 파일을 넣어보세요.

String text = System.IO.File.ReadAllText(@"C:\NewFolder\zad3.txt");