关于js读取rtf域的问题
一、基礎知識:
1、常用ASCII碼知識:
chr(9)、chr(10)、chr(13)、chr(32)、chr(34)
所有關于 ASCII碼的表格:[url]http://www.asciitable.com/
chr(13) 是一個回車
Chr(10) 是個換行符
chr(32) 是一個空格符
9/34 是tab,未確定?
2、lotus notes中的rtf域
GetFormattedText(tabstrip, lineLength% )
eg:GetFormattedText(false,0),對rtf域值中的tab不進行處理,并且默認80個字符換行。
我們常用如下代碼的方式來讀取rtf域的值
Dim doc As NotesDocument
Dim rtitem As Variant
Dim plainText As String
Dim fileNum As Integer
'...set value of doc...
Set rtitem = doc.GetFirstItem( "Body" )
If ( rtitem.Type = RICHTEXT ) Then
? plainText = rtitem.GetFormattedText( False, 0 )
End If
二、遇到的問題
今天在讀取rtf域的值,并通過js代碼讀取到excel中的時候報錯:“未結束的字符串常量”。
相關代理中的代碼如下:
Print |<script language="Javascript">|
??? Print |alert("|+doc.rtfDecription+|");|
??? Print |</script>|
其中rtfDecription 為rtf域。
當此域中的值為簡單的文本(eg,123,dsa)時,不存在這種問題。當域值包含換行等字符的時候,就會報錯“未結束的字符串常量”。
三、處理辦法
以下示例代碼針對相關字符(回車和換行)進行處理。
Sub Initialize
??? On Error Goto errHandler
??? Dim s As NotesSession
??? Dim doc As NotesDocument
??? Set s = New NotesSession
??? Set doc = s.DocumentContext
??? Dim rtitem As Variant
??? Dim plainText As String
??? Dim vTextArea As Variant
??? Set rtitem=doc.GetFirstItem("wahaha")
??? If ( rtitem.Type = RICHTEXT ) Then
??????? plainText = rtitem.GetFormattedText( False, 0 )
??? End If
??? Dim strTemp As String
??? If (Instr(plainText,Chr(13))>0) Then
??????? vTextArea = Split(plainText,Chr(13))
??????? strTemp =""
??????? strTemp = Join(vTextArea," ")
??? End If???????
??? If (Instr(strTemp,Chr(10))>0) Then
??????? vTextArea = Split(strTemp,Chr(10))
??????? strTemp =""
??????? strTemp = Join(vTextArea," ")
??? End If???????
??? 'Method 2
??? 'vTextArea = Evaluate(|@ReplaceSubstring(@Text(wahaha);@NewLine;" ")|,doc)
??? 'Msgbox vTextArea(0)
??? Print |<script language="Javascript">|
??? Print |alert("|+strTemp+|");|
??? Print |</script>|
??? Exit Sub
errHandler:
??? Msgbox Error & Error$ & Cstr(Erl)
??? Exit Sub
End Sub
輸入值:abc
def
afs
輸出值:abc def afs
四、總結
前臺代碼(js代碼)和后臺代碼(LotusScript、java)盡量分開寫。
總結
以上是生活随笔為你收集整理的关于js读取rtf域的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [javascript]图解+注释版 E
- 下一篇: eclipse 安装vim插件