Pergunta

Eu tenho um NSString (filepath), que tem o caminho para o arquivo de áudio. Quero abrir o arquivo de áudio, então quero converter o NSString para CString.

  fopen([filePath cStringUsingEncoding:1], "r");

é a linha acima está correta ou não, porque eu também posso usar fopen([filePath cString], "r");. Em alguns sites, é mencionado usar o UTF8StringEncoding. Qual é o NSString certo para a conversão de string?

Foi útil?

Solução

Usar UTF8String:

fopen([filePath UTF8String], "r");

Outras dicas

Não use UTF8String, mas fileSystemRepresentation.

Você deve fazer isso porque o HFS+ ou outros sistemas de arquivos não são estritamente compatíveis com o sistema Unicode. Outro motivo: este método opera substituindo o caminho abstrato e os caracteres separadores de extensão ('/' e '.', Respectivamente) por seus equivalentes para o sistema de arquivos atual.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top