簡単な背景、私はたくさんのメモを持っています。15 年前に wpd 形式で入力し、約 10 年前にそれらを rtf 形式に変換し、今はそれらを html に変換したいと考えています。私が見たすべてのphpの例は、非常に基本的なhtmlを使用しています。私がやりたい方法には、ネストされたリストが含まれます。
http://dl.dropbox.com/u/47490038/ech.rtf
https://dl.dropbox.com/u/47490038/notes/index.html
これまでのところ、以下のマクロを使用して rtf から txt に移動しましたが、php の部分は理解できません。一部は、各行の先頭にあるタブまたはスペースを数えることで実行できます。上記の URL を参照してください。目的の出力。後でスタイルを追加できます。
慣れていない言語であっても、これを行う方法についての提案を受け付けています。マクロでさえ、私はあまり満足していません。Word 以外のフォルダーまたはファイルを選択できるようにしたいと考えています。変換するものが 100 個あることを考えると、ドラッグ アンド ドロップで何かを選択できるようにしたいと考えています。
Sub ChangeDocsToTxtOrRTFOrHTML()
'with export to PDF in Word 2007
Dim fs As Object
Dim oFolder As Object
Dim tFolder As Object
Dim oFile As Object
Dim strDocName As String
Dim intPos As Integer
Dim locFolder As String
Dim fileType As String
On Error Resume Next
locFolder = InputBox("Enter the folder path to RTFs", "File Conversion", "C:\myDocs")
Select Case Application.Version
Case Is < 12
Do
fileType = UCase(InputBox("Change DOC to TXT, RTF, HTML", "File Conversion", "TXT"))
Loop Until (fileType = "TXT" Or fileType = "RTF" Or fileType = "HTML")
Case Is >= 12
Do
fileType = UCase(InputBox("Change DOC to TXT, RTF, HTML or PDF(2007+ only)", "File Conversion", "TXT"))
Loop Until (fileType = "TXT" Or fileType = "RTF" Or fileType = "HTML" Or fileType = "PDF")
End Select
Application.ScreenUpdating = False
Set fs = CreateObject("Scripting.FileSystemObject")
Set oFolder = fs.GetFolder(locFolder)
Set tFolder = fs.CreateFolder(locFolder & "Converted")
Set tFolder = fs.GetFolder(locFolder & "Converted")
For Each oFile In oFolder.Files
Dim d As Document
Set d = Application.Documents.Open(oFile.Path)
strDocName = ActiveDocument.Name
intPos = InStrRev(strDocName, ".")
strDocName = Left(strDocName, intPos - 1)
ChangeFileOpenDirectory tFolder
Select Case fileType
Case Is = "TXT"
strDocName = strDocName & ".txt"
ActiveDocument.SaveAs FileName:=strDocName, FileFormat:=wdFormatText
Case Is = "RTF"
strDocName = strDocName & ".rtf"
ActiveDocument.SaveAs FileName:=strDocName, FileFormat:=wdFormatRTF
Case Is = "HTML"
strDocName = strDocName & ".html"
ActiveDocument.SaveAs FileName:=strDocName, FileFormat:=wdFormatFilteredHTML
Case Is = "PDF"
strDocName = strDocName & ".pdf"
' *** Word 2007 users - remove the apostrophe at the start of the next line ***
'ActiveDocument.ExportAsFixedFormat OutputFileName:=strDocName, ExportFormat:=wdExportFormatPDF
End Select
d.Close
ChangeFileOpenDirectory oFolder
Next oFile
Application.ScreenUpdating = True
End Sub
私は多くのことを求めていることを認識しています。ガイダンス、提案、ヘルプ、コードは大歓迎です。