Ive有一個看看這篇文章:Find if string ends with another string in C++比較兩個字符串,以排除基於extention
我試圖實現類似的目標。
基本上我想從一個目錄中取出一個文件列表,並過濾掉任何不以指定的允許擴展名結束的文件,以便在我的程序中進行處理。
在java中,這將通過創建一個方法並將擴展字符串作爲字符串傳遞,然後在以下語句中使用.endswith來執行。 C++似乎不支持這個,所以我該如何去解決它?
for (int fileList = 0; fileList < files.length; fileList++)
{
//output only jpg files, file list is still full
if(files[fileList].toString().endsWith(extension))
{
images.add(files[fileList]);
}//end if
}//end for
在此先感謝
會不會只是檢查擴展是否是相同的長度。我需要根據實際的擴展名排除,例如.pdf或.doc – Chriss 2011-04-07 14:28:36
note - 'e'需要包含「。」,否則匹配「ml」文件的嘗試也將匹配「html」。 – AShelly 2011-04-07 14:29:15
@chriss,最後一行是將字符串中最後一個'e.size()'字符與'e'進行比較。 – AShelly 2011-04-07 14:30:11