O que é o formato de ficheiro STRINGS?
Um arquivo .strings é um arquivo de texto que armazena strings de exibição localizadas - alertas, mensagens de erro, rótulos de botões e outros textos de interface - para aplicativos macOS e iOS. Muitos arquivos .strings contendo vários alertas, notificações e mensagens de erro são armazenados dentro do pacote do aplicativo (app bundle), organizados em diretórios .lproj específicos por idioma (por exemplo, en.lproj/ para inglês ou fr.lproj/ para francês). O sistema operacional seleciona a pasta .lproj correta em tempo de execução para exibir o texto apropriado para a localidade.
O nome de arquivo mais comum é Localizable.strings - o arquivo padrão que o Xcode procura automaticamente. Cada entrada segue uma sintaxe simples de chave-valor: "key" = "value"; - chaves e valores são strings entre aspas, separadas por = e terminadas com um ponto e vírgula. Comentários usam a sintaxe de estilo C /* */ ou //. Arquivos .strings de origem são codificados como UTF-8 (preferencial desde o Xcode 10) ou historicamente como UTF-16 com uma marca de ordem de byte (BOM).
Um arquivo .strings pode ser aberto e editado pelo Apple Xcode, MacroMates TextMate, BBEdit, VS Code ou qualquer editor de texto simples. Durante uma compilação no Xcode, os arquivos .strings de origem são compilados no formato binary property list dentro do pacote do aplicativo, portanto, os arquivos implantados diferem do texto de origem.
A Apple introduziu o .xcstrings (String Catalogs) no Xcode 15 (2023) como uma alternativa moderna baseada em JSON com suporte integrado para variantes gramaticais e de plural. O formato .strings permanece totalmente suportado e amplamente utilizado no macOS, iOS, iPadOS, tvOS e watchOS.
Segurança e proteção
RISCO: LOWArquivos .strings são texto simples sem conteúdo executável. Não há risco de segurança ao abri-los. Ao modificar strings dentro de um pacote de aplicativo de terceiros (jailbreak/mod), você pode violar a licença ou os termos de serviço do aplicativo.
Detalhes do formato
em resumoProgramas que abrem arquivos STRINGS
Detalhes técnicos
especificação profunda| Codificação | UTF-8 (preferencial, Xcode 10+); UTF-16 LE ou BE com BOM (convenção legada) |
| BOM Legado | UTF-16 LE: `FF FE`; UTF-16 BE: `FE FF`; a forma plist binária compilada começa com `bplist` (hex 62 70 6C 69 73 74) |
| Sintaxe de entrada | `"key" = "value";` - tanto a chave quanto o valor entre aspas duplas; terminador de ponto e vírgula obrigatório |
| Sintaxe de comentário | Estilo C `/* comentário em bloco */` ou comentários de linha `//` |
| Convenção de diretório | Arquivos colocados em diretórios `.lproj` nomeados pela localidade (ex: `en.lproj/`, `ja.lproj/`, `fr.lproj/`) |
| Nome de arquivo padrão | `Localizable.strings` - o arquivo que o Xcode pesquisa por strings visíveis ao usuário por padrão |
| Forma compilada | O Xcode converte o `.strings` de origem em plist binário durante a compilação do app; pacotes de apps implantados contêm o binário, não o texto de origem |
| Regras de plural/gênero | Um arquivo `.stringsdict` pareado (XML plist) no mesmo `.lproj` lida com formas plurais e variantes gramaticais |
| Formato sucessor | `.xcstrings` (String Catalogs, baseado em JSON, Xcode 15 / 2023) é o substituto moderno para novos projetos |
| Tipo MIME | `text/plain` para a forma de origem; a forma binária compilada é `application/octet-stream` |
| Escopo da plataforma | macOS, iOS, iPadOS, tvOS, watchOS e visionOS |
| Ferramentas de compilação | `genstrings` extrai literais de string do código-fonte para arquivos `.strings`; `ibtool` os compila para plist binário no pacote do app |
| Lançado | Mac OS X 10.0 (March 2001); later adopted for iOS (2007) |
| Versão mais recente | Strings files remain current; Apple introduced .xcstrings (String Catalogs) in Xcode 15 / 2023 as a modern alternative |
| Especificação | developer.apple.com |
Conversões de STRINGS
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos STRINGS.
Perguntas frequentes
O que é um arquivo .strings no Mac?
Como edito um arquivo .strings?
Qual codificação um arquivo .strings utiliza?
O que substituiu os arquivos .strings?
.xcstrings (String Catalogs), introduzido no Xcode 15 (2023), é o substituto moderno. Ele consolida todas as localizações em um único arquivo JSON com melhores ferramentas. Arquivos .strings legados permanecem totalmente suportados.Como adiciono um novo idioma a um aplicativo iOS usando .strings?
.lproj com uma cópia dos seus arquivos .strings para traduzir.