35 votes

Y a-t-il une limite de longueur pour les chaînes stockées dans le trousseau ?

Je veux stocker des informations sur l'utilisateur sous forme de chaîne dans le trousseau sur iOS. Y a-t-il une limite de longueur de la chaîne dans le trousseau ?

Gracias.

56voto

Mark Points 236

J'ai créé une application iOS qui permet de faire une recherche binaire en utilisant cette bibliothèque pour interagir avec le trousseau, et j'ai déterminé que le maximum que je pouvais stocker était une chaîne NS(Mutable)String d'une longueur de 16 777 110. C'est donc nettement moins que la longueur maximale d'une NSString ou que la valeur par défaut de SQLITE_MAX_LENGTH suggérée dans d'autres réponses.

EDIT : Si vous cherchez à vérifier rapidement cette réponse, je vous suggère d'essayer de stocker une chaîne de longueur 16,777,110 dans le trousseau, puis d'essayer une chaîne de longueur 16,777,111. Si la première chaîne fonctionne et que la seconde ne fonctionne pas, cette réponse est correcte.

16voto

Ramshad Points 10282

C'est difficile de répondre :) Il devrait supporter la longueur maximale de NSString

Donc, le trousseau de clés peut contenir un peu plus d'un million de dollars. 4,2 milliards d'euros caractères identiques à NSString

5voto

user1364368 Points 149

Le trousseau de clés d'iOS est réalisé sous forme de base de données SQLite (voir aquí par exemple). Ainsi, la longueur maximale d'une chaîne stockée dans une base de données SQLite pourrait être une limite supérieure de la longueur maximale d'une chaîne dans le trousseau de clés.

Selon cette page en sqlite.org le nombre maximal d'octets pour une chaîne ou un BLOB est limité par la macro du préprocesseur SQLITE_MAX_LENGTH dont la valeur par défaut est 10^9 . Ainsi, en supposant un codage de 16 bits de la chaîne, la longueur maximale d'une chaîne serait la moitié de cette valeur. Cependant, il se pourrait qu'Apple utilise une valeur inférieure pour SQLITE_MAX_LENGTH .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X