2017-09-05 93 views
3

我很驚訝地發現突然出現錯誤,我的ShinyApp停止了一個未知錯誤,說'輸入字符串1是無效的UTF-8'。即使在昨天,該應用程序仍然完美運行,但是,突然停止了。閃亮的本地部署錯誤:輸入字符串1無效UTF-8

下面是錯誤的描述,當我運行runApp()

> runApp() 

Listening on http://127.0.0.1:3726 
Warning: Error in sub: input string 1 is invalid UTF-8 
Stack trace (innermost first): 
    1: runApp 
Error : input string 1 is invalid UTF-8 

我的會話信息:

> library(shiny); sessionInfo() 
R version 3.4.1 (2017-06-30) 
Platform: x86_64-apple-darwin15.6.0 (64-bit) 
Running under: macOS Sierra 10.12.6 

Matrix products: default 
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib 
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib 

locale: 
[1] C/UTF-8/C/C/C/C 

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] shiny_1.0.5 

loaded via a namespace (and not attached): 
[1] compiler_3.4.1 R6_2.2.2  htmltools_0.3.6 Rcpp_0.12.12 
[5] digest_0.6.12 xtable_1.8-2 httpuv_1.3.5 mime_0.5 

有人面臨着類似的錯誤?感謝任何有關如何解決此錯誤的指示。我在網上搜索了一段時間的解決方案,但沒有找到任何相關的。

謝謝你的時間。

感謝,

+0

我有同樣的問題,並通過[取代非UTF-8字符]解決它(https://stackoverflow.com/questions/17291287/how-to-identify-delete-non-utf-8-characters-in -r)在我的數據。 'validUTF8()'幫助我識別非UTF-8字符。 –

回答

1

是否使用includeHTML任何機會?

將Microsoft Publisher文檔保存爲.htm文件,然後將它們打入應用程序時,我遇到了此問題。

它看起來像includeHTML強制實施 'UTF-8' 編碼:

> includeHTML 
function (path) { 
    lines <- readLines(path, warn = FALSE, encoding = "UTF-8") 
    return(HTML(paste8(lines, collapse = "\\r\\n"))) 
} 

但是我的Windows 10系統默認爲 'ISO-8859-1'。

在Rstudio中你可以做文件>保存編碼> UTF-8,一切似乎工作。否則,您可以覆蓋includeHTML函數以允許設置readLines的編碼參數。

+0

嗨海登,我後來發現,在我的Shiny應用程序中,有一個特殊的字符串導致了這個錯誤。我刪除了特定的字符串,並用更有意義的東西替換了它。現在它工作正常。無論如何感謝您的指針。問候, – Bogaso

相關問題