> writeLines("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename
>
Uma vantagem é que você não precisa se lembrar de anexar um "\n"à string passada para cat()para obter uma nova linha após sua mensagem. Por exemplo, compare o acima com a mesma cat()saída:
> cat("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename>
e
> cat("File not supplied.\nUsage: ./program F=filename","\n")
File not supplied.
Usage: ./program F=filename
>
A razão de print()não fazer o que você quer é print()mostrar uma versão do objeto do nível R - neste caso, é uma string de caracteres. Você precisa usar outras funções como cat()e writeLines()para exibir a string. Digo "uma versão" porque a precisão pode ser reduzida nos números impressos e o objeto impresso pode ser aumentado com informações extras, por exemplo.
Ambos writelinese 'cat` não parecem escrever para uma variável. Eu estava tentando criar uma variável de string com várias linhas. stringvar <- writeLines("line1\nline2")não atribui. stringvar retorna ainda nulo Alguma alternativa?
sjd
25
Você consegue fazer isso:
cat("File not supplied.\nUsage: ./program F=filename\n")
+1 @Shane Eu precisava do gato ("\ n") para outra coisa, ver isso ajudou! Obrigado
Alos
7
O uso de writeLines também permite dispensar o caractere de nova linha "\ n", usando c(). Como em:
writeLines(c("File not supplied.","Usage: ./program F=filename",[additional text for third line]))
Isso é útil se você planeja escrever uma mensagem de várias linhas com entrada combinada fixa e variável, como o [texto adicional para a terceira linha] acima.
writelines
e 'cat` não parecem escrever para uma variável. Eu estava tentando criar uma variável de string com várias linhas.stringvar <- writeLines("line1\nline2")
não atribui.stringvar
retorna ainda nulo Alguma alternativa?Você consegue fazer isso:
Observe que
cat
tem umreturn
valor deNULL
.fonte
O uso de writeLines também permite dispensar o caractere de nova linha "\ n", usando
c()
. Como em:Isso é útil se você planeja escrever uma mensagem de várias linhas com entrada combinada fixa e variável, como o [texto adicional para a terceira linha] acima.
fonte
Você também pode usar uma combinação de
cat
epaste0
Acho isso mais útil ao incorporar variáveis na impressão. Por exemplo:
fonte