2012-07-20 119 views
0

我正在做一個項目,要求用戶鍵入語音聲音。如何從另一個文件夾播放.wav文件?完成Visual Studio 2010 C++

例如,th。然後程序會播放一個產生th聲音的波形文件。 由於拼音有很多不同的波形文件,因此我決定將它們分組到不同的文件中,這意味着它不會位於.exe目錄的同一個文件夾中。在這種情況下,我該如何播放來自另一個文件的聲音?

這是我認爲可以工作的部分,但它沒有..請幫助我!

FILENAME1 = strcat(text_data, ".wav"); 
FILENAME2 = strcat("wav" ,FILENAME1); 
printf ("%s", FILENAME2); 
PlaySound(TEXT(FILENAME2), NULL, SND_SYNC); 

text_data包含用戶輸入的內容,如「th」。和應用程序播放th.wav文件是否有可能從另一個文件夾播放它?這樣我可以將各種wav文件分組。

然後它會是這樣的:;

調試(包含.exe文件) - >輔音 - > th.wav(這是一個我想打,但它不會在同一目錄下的.exe文件

。請幫助我,非常感謝!

回答

0

例如,如果文件在Debug \ Sounds \ SomeSound.wav中,您將不得不提供Sounds \ SomeSound.wav作爲路徑。

編輯:您可以使用'+'運算符連接多個字符串,它應該看起來像:

"Folder_Name\\" + text_data + ".wav" 

你也可以看看std :: stringstream來完成這項工作。

+0

嗯,你如何在代碼中包含完整的路徑?我不知道如何將它們包含在上面的代碼中。 – 2012-07-20 05:23:29

+0

除了將「.wav」添加到text_data之外,還需要在文本之前添加目錄名稱。 – danish 2012-07-20 05:33:29

+0

你的意思是這樣嗎? FILENAME1 = strcat(\ Debug \ Sounds \,text_data,「.wav」); 請原諒我,因爲我剛開始學習編程謝謝! – 2012-07-20 05:50:52