> writeLines("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename
>
Un avantage est que vous n'avez pas à vous rappeler d'ajouter un "\n"à la chaîne passée à cat()pour obtenir une nouvelle ligne après votre message. Par exemple, comparez ce qui précède à la même cat()sortie:
> cat("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename>
et
> cat("File not supplied.\nUsage: ./program F=filename","\n")
File not supplied.
Usage: ./program F=filename
>
La raison pour laquelle print()ne fait pas ce que vous voulez est que print()vous montre une version de l'objet du niveau R - dans ce cas, il s'agit d'une chaîne de caractères. Vous devez utiliser d'autres fonctions comme cat()et writeLines()pour afficher la chaîne. Je dis «une version» parce que la précision peut être réduite dans les chiffres imprimés et que l'objet imprimé peut être augmenté d'informations supplémentaires, par exemple.
Les deux writelineset 'cat' ne semblent pas écrire dans une variable. J'essayais de créer une variable de chaîne avec plusieurs lignes. stringvar <- writeLines("line1\nline2")n'assigne pas. stringvar renvoie toujours nul. Une alternative?
sjd
25
Tu peux le faire:
cat("File not supplied.\nUsage: ./program F=filename\n")
+1 @Shane J'avais besoin du chat ("\ n") pour autre chose, voir ça m'a aidé! Merci
Alos
7
L'utilisation de writeLines vous permet également de vous passer du caractère de nouvelle ligne "\ n", en utilisant c(). Un péché:
writeLines(c("File not supplied.","Usage: ./program F=filename",[additional text for third line]))
Ceci est utile si vous prévoyez d'écrire un message multiligne avec une entrée combinée fixe et variable, comme le [texte supplémentaire pour la troisième ligne] ci-dessus.
writelines
et 'cat' ne semblent pas écrire dans une variable. J'essayais de créer une variable de chaîne avec plusieurs lignes.stringvar <- writeLines("line1\nline2")
n'assigne pas.stringvar
renvoie toujours nul. Une alternative?Tu peux le faire:
Notez que cela
cat
a unereturn
valeur deNULL
.la source
L'utilisation de writeLines vous permet également de vous passer du caractère de nouvelle ligne "\ n", en utilisant
c()
. Un péché:Ceci est utile si vous prévoyez d'écrire un message multiligne avec une entrée combinée fixe et variable, comme le [texte supplémentaire pour la troisième ligne] ci-dessus.
la source
Vous pouvez également utiliser une combinaison de
cat
etpaste0
Je trouve cela plus utile lors de l'incorporation de variables dans l'impression. Par exemple:
la source