У меня есть функция, которая получает все содержимое каталога, будь то файлы или каталоги, и я использую contentsOfDirectoryAtPath
для сбора содержимого каталога, затем я сохраняю имена файлов / каталогов в контейнере с именем contentsStore
, который принимает ключ и значение элементы строки UTF-16 char16_t
. посмотрите на следующий код, чтобы прояснить свое видение:
NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:_dirPath error:nil];
for(unsigned int i= 0; i< [dirContents count]; i++){
if(isDir){
// `contentsStore` is key&value container that accepts utf-16 string (char16_t)
contentsStore.Add([[dirContents objectAtIndex:i] UTF8String], "directory");
} else {
contentsStore.Add([[dirContents objectAtIndex:i] UTF8String], "file");
}
}
Обратите внимание, что я не публикую весь код, потому что он большой, но я просто добавил важные части, связанные с проблемой. Кроме того, я использую Objective- C просто как мост для достижения моей цели - использовать Cocoa в macOS, но основным языком, который я использую, является C ++, поэтому весь код представляет собой комбинацию C ++ / Objective- C.
Как заставить метод objectAtIndex
выводить содержимое элемента как UTF-16 char16_t
?