Apostrophe Non précédée de

J'ai une chaîne définie dans une application android:

<string name="search_occurs">'{string}' occurs {times}</string>

Cela donne l'erreur: Apostrophe Non précédée de (dans '{string} ' se produit {times})

J'ai essayé un certain nombre de choses pour résoudre ce problème:

<string name="search_occurs">'{string}' occurs {times}</string>
<string name="search_occurs">&apos;{string}&apos; occurs {times}</string>
<string name="search_occurs"><![CDATA['{string}' occurs {times}]]></string>
<string name="search_occurs"><![CDATA['{string}' occurs {times}]]></string>

Je ne suis pas capable de me débarrasser de l'erreur. Ce qui me manque?

75
demandé sur Frank Schnabel 2013-03-29 18:49:13

8 réponses

Ceux-ci devraient tous deux fonctionner selon http://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling:

<string name="search_occurs">\'{string}\' occurs {times}</string>
<string name="search_occurs">"'{string}' occurs {times}"</string>
91
répondu John Boker 2013-03-29 14:52:33

Il suffit de mettre \ before ' dans votre chaîne C'est faux C'est vrai:)

44
répondu Real Hyder 2013-06-24 06:06:00

Pourquoi ne fournissez - vous pas le ' avec la chaîne avec laquelle vous le remplacez?

Vous connaissez aussi des constructions comme celle-ci?

<string name="profile_age_range_text_between">between %1$d and %2$d</string>
<string name="unit_height_inches">%1$d\'%2$d ft</string>
<string name="unit_distance_miles">%s mi</string>
3
répondu WarrenFaith 2013-03-29 14:52:21

Remplacer Votre apostrophe (') avec (\') ou ajouter \ avant chaque (')

Note: copier uniquement dans le texte ()

2
répondu saigopi 2017-08-08 06:56:24

Assurez-vous que vous modifiez le fichier correct. Comme cette réponse unis, lorsque vous obtenez l'erreur, Android Studio ouvre une values.xml fichier, qui ressemble à votre fichier d'origine. Vous devez ajouter le \ dans le fichier strings.xml d'origine (ou partout où se trouve le caractère incriminé). Sinon, il va juste continuer à répéter l'erreur.

2
répondu Suragch 2017-09-29 23:08:03

En réponse à https://stackoverflow.com/users/3339394/the-martian Il existe une solution générale pour remplacer ' par 'vous devez copier le texte dans un éditeur de mots (comme Notepad++), puis en utilisant l'option" Remplacer "dans le programme remplacer l'ensemble par'. (parce que je n'ai pas assez de réputation, j'ai dû l'écrire dans une réponse désolé!)

0
répondu Farhad 2017-05-23 11:54:44

Cette Erreur Est Causée Par Une Apostrophe Utilisée Dans La Chaîne

Remplacez L'Apostrophe Par \ ' C'Est Tout

0
répondu Muhammad Farooq Arshad 2017-07-20 07:16:11

J'ai obtenu la solution basée sur mon scénario.

  1. sélectionnez votre chaîne.fichier xml
  2. Faites un clic droit et ouvrez afficher dans l'Explorateur
  3. Modifier la ligne de la chaîne.fichier xml et enregistrer le code.
  4. rouvrez Android studio et actualisez la solution.

Maintenant, le code va s'exécuter.

Remarque: j'ai obtenu l'erreur dans l'utilisation de l'Apostrophe sur ne peut pas. donc, je change en ne peut pas . Maintenant, mon scénario fonctionnera.

-1
répondu sudharsan chandrasekaran 2017-07-21 07:27:42