Simple / Direct / chemin Heredoc de la construction d'une chaîne HTML en Java
-
30-09-2019 - |
Question
En python je peux construire une chaîne HTML sans se soucier de sortir des caractères spéciaux comme Y at-il une manière similaire à faire en Java? html_string = """
<html>
<body>
<p>My text with "quotes" and whatnot!<p>
</body>
</html>
"""
La solution
Il ne peut pas être fait en Java comme en Python. Toutefois, si vous utilisez Eclipse aller à Fenêtre-> Préférences-> Java-> Editor-> Saisie La dernière case à cocher est « texte Évasion lors du collage dans un littéral chaîne ». Regarde ça. Maintenant, lorsque vous collez lorsque votre curseur est entre guillemets il sera réchappés.
Autres conseils
Non, mais certains outils échappent pour vous quand vous le coller, comme éclipse.
Aux fins mentionné, Java Server Pages faire l'affaire sans même que le tripple """
: -
Dans le code source Java, guillemet est un caractère spécial, utilisé pour déclarer les chaînes littérales. Vous ne pouvez pas avoir une double citation dans un littéral chaîne sans échapper.
En général, je voudrais essayer d'éviter codage en dur des chaînes comme ça dans le code source, en particulier si je me trouvais, il fait beaucoup - comme vous l'avez remarqué, ils sont une douleur à traiter comme source et ils pourraient être tout à fait susceptible de changer, dans ce cas, vous pouvez le faire sans recompilation. Si vous ne avez pas besoin de pièces d'exécution de l'offre aux données textuelles, vous pouvez vous en sortir avec quelque chose d'aussi simple que la lecture des données à partir d'un fichier de propriétés, ou vous pouvez utiliser un moteur de templating comme
Pour écho truc de benjismith d'un question similaire, vous pouvez utiliser un autre caractère et les remplacer par la suite: Je l'ai trouvé utile quand j'écrivais des tests avec JSON String myString = "using `backticks` instead of quotes".replace('`', '"');
String json = "{`kind`:`file`,`sid`:802,`rid`:5678 ,`attrs`:{`name`:`FILE-WG-2468`}}".replace('`', '"');
// vs
String json = "{\"kind\":\"file\",\"sid\":802,\"rid\":5678 ,\"attrs\":{\"name\":\"FILE-WG-2468\"}}";