我在 Windows 7 上使用 Delphi 2010,并且在递归搜索目录时遇到单引号加倍的问题。
这是我搜索目录的代码。
if FindFirst(aPath + '*', faDirectory, sr) = 0 then
try
repeat
if (sr.Name <> '.') and (sr.Name <> '..') then
if (sr.Attr and faDirectory) = faDirectory then
SearchFolderEx(aPath + sr.Name + '\', aSearchMasks);
until FindNext(sr) <> 0;
finally
FindClose(sr);
end;
现在使用这样的路径(从“C:\New folder\”开始)
C:\New folder\New Folder's\New Text Document.txt
FindFirst/FindeNext 将单引号加倍
'New Folder''s'
TSearchRec 中的 FindData.cFileName 看起来像这样
('N', 'e', 'w', ' ', 'F', 'o', 'l', 'd', 'e', 'r', '''', 's', #0, #0, ...)
问题可能出在哪里,我该如何解决?