5

Shiny は、エンコーディングの問題により分音符号が正しくないテキストを処理しているようです。追加してみましoptions(encoding="UTF-8")たが改善されません。

例: ë と入力すると Î と表示されますが、ログファイルでは {"char":"ë"} と表示されます。

誰かが同じ問題に遭遇したことを願っています。

テキストを入力として処理する再現可能な例。

options(shiny.trace = TRUE) # Print debugging info to console
runApp(list(
  ui = pageWithSidebar(
    headerPanel("Test input characters"),
    sidebarPanel(
      textInput("char", "Write character", "")
    ),
    mainPanel()
  ),
  server = function(input, output) {
    datasetInput <- reactive({ input$char })
  }
))

sessionInfo() R バージョン 3.0.2 (2013-09-25) プラットフォーム: i386-w64-mingw32/i386 (32 ビット) Shiny_0.7.0 および chrome を使用

**光沢のある跡**

Listening on port 8100
SEND {
 "config": {
 "workerId": "",
"sessionId": "b32ed6dc994bd484ab4a39cae0903c79" 
} 
}
RECV {"method":"init","data":{"char":"",".clientdata_pixelratio":1,".clientdata_url_protocol":"http:",".clientdata_url_hostname":"localhost",".clientdata_url_port":"8100",".clientdata_url_pathname":"/",".clientdata_url_search":"",".clientdata_url_hash_initial":"",".clientdata_allowDataUriScheme":true}}
RECV {"method":"update","data":{"char":"ë"}}

Mac でアプリを探索して更新しましたが、エンコードの問題はありません。

4

1 に答える 1

0

多分これが役立つかもしれません。UTF-8エンコーディングを からに変更する必要がありますlatin1

library(shiny)

options(shiny.trace = TRUE) # Print debugging info to console
runApp(list(
  ui = pageWithSidebar(
    headerPanel("Test input characters"),
    sidebarPanel(
      textInput("char", "Write character", "")
    ),
    mainPanel(
      textOutput("dsI")  
    )   
  ),   
  server = function(input, output) {
    datasetInput <- reactive({ aaa=input$char 
    iconv(aaa, "UTF-8", "latin1") })
    output$dsI<-datasetInput  
  } 
))

うまくいくことを願っています!

于 2014-07-11T08:44:45.223 に答える