ノートパッドを利用している際、改行コード(↑)を使って改行を表現したいのですが、複数行に渡って改行があるのでひとつひとつ↑と書いていくのは大変です。置換などを使って、それらを一発で変換する方法はありませんか?具体的な手順を教えてください。


例えば下記のような改行を含んだ文章を・・・
-----------------------------
ももんが
とんだ
すごかった


下記のように改行コードを用いて一列にしてください。
-----------------------------
ももんが↑とんだ↑すごかった

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/11/04 17:57:51
  • 終了:2006/11/05 03:14:53

回答(5件)

id:drowsy No.1

drowsy回答回数1163ベストアンサー獲得回数882006/11/04 18:32:30

ポイント20pt

ノートパッドのことがよくわからないのでもし

yahoo!ノートパッドだったらごめんなさい。

http://notepad.yahoo.co.jp/YYY,25cbda


「テキストエディタで文末に改行をつける」という質問であれば…

「TERAPAD(テラパッド)」というテキストエディタでできます。

ダウンロードはここ

http://www.vector.co.jp/soft/win95/writing/se104390.html


TERAPADをダウンロード&インストールしたら、立ち上げて、

テキストをコピー&ペースト。

全部を選んで、「整形」を選びます。

「行末文字入力」を選んで、「↑」を入力してoK

全ての行末に「↑」がつきます。

id:taroemon

ご回答ありがとうございます。

質問の仕方が悪かったですね。

ウィンドウズ付属のメモ帳で実行したいのです。

2006/11/04 21:33:26
id:salic No.2

salic回答回数175ベストアンサー獲得回数12006/11/04 18:38:17

ポイント20pt

バイナリエディタで、0D 0A と並んでいる所を適切な物に変換すれば良いと思います。

http://www.vector.co.jp/soft/win95/util/se079072.html

「↑」と言う文字に変換したいなら 81 AA に変換して下さい。


0D 0A 0D 0Aと連続している場合に特別な処理を行いたい場合は、予め何か違う文字に置き換え

処理して下さい。

id:taroemon

ご回答ありがとうございます。

たぶん適切な回答だと思うのですが、

ちょっと理解できません。

もう少し素人でも理解しやすいように

してもらえると嬉しいです。

2006/11/04 21:35:16
id:llusall No.3

llusall回答回数505ベストアンサー獲得回数612006/11/04 22:20:38

ポイント100pt

以下のVBScriptを使用してはいかがでしょうか?


使用方法

以下のソースの■部分を適宜修正して、

「一括置換.vbs」などのファイル名でデスクトップ等に保存します。


変換するテキストファイルをアイコンにドラッグ&ドロップします。



Option Explicit

Dim REP_STR_BEFORE

Dim REP_STR_AFTER

Const FOLDER = "C:\TEST"    '■置換したファイルを入れる場所を指定します。

REP_STR_BEFORE = vbCrLf     '■置換前の文字列を指定します。(この場合「改行」)

REP_STR_AFTER  = "↓"       '■置換後の文字列を指定します。(この場合「↓」文字)

Call Main()

Sub Main()

    Dim objArgs

    Dim i

    Dim nArgCnt

    Dim bRtn

    Dim sResultFile, sPath

    Dim sFname

    Dim objFS, objTXT, objTXT2, sText

    Err.Clear

    'コマンドライン引数の有無チェック

    Set objArgs = WScript.Arguments

    nArgCnt = objArgs.Count

    If nArgCnt = 0 Then

        MsgBox "アイコンにファイルをドラッグ&ドロップしてください。", vbExclamation

        Exit Sub

    End If

    Set objFS   = CreateObject("Scripting.FileSystemObject")

    If objFS.FolderExists(FOLDER) Then

    Else

        objFS.CreateFolder (FOLDER)

    End If

    'ファイル数の処理を実行

    For i = 0 To nArgCnt -1

        sPath = objArgs(i)

        sFname = objFS.GetBaseName(sPath)

        Set objTXT  = objFS.OpenTextFile( sPath, 1, False )

        Set objTXT2 = objFS.CreateTextFile( FOLDER & "\" & sFname & ".txt" , True )

        sText = Replace(objTXT.ReadAll,REP_STR_BEFORE,REP_STR_AFTER)

        objTXT2.WriteLine(sText)

        objTXT.Close

        Set objTXT  = Nothing

        objTXT2.Close

        Set objTXT2 = Nothing

    Next

    MsgBox "終わり。", vbInformation

End Sub

※仕様上(ReadAll メソッド)、サイズの大きいファイルの変換は、多くのメモリ リソースを消費します。


id:taroemon

ご回答ありがとうございます。

すばらしいです。望んでいた以上の物です。

ありがとうございました。

2006/11/05 03:14:23
id:pascal7 No.4

pascal7回答回数584ベストアンサー獲得回数992006/11/04 23:47:46

ポイント20pt

ウィンドウズ付属のメモ帳では出来ないと思います。フリーソフトのエディタ等を使うようにすると出来ると思います。

私は有料の秀丸と言うのを使っているのですが。

正規表現と言うのをONにして

「\n」→「↑」に置換すると出来ます。

サクラエディタなら出来ると思います。

http://sakura_editor.at.infoseek.co.jp/snapshot.html

id:taroemon

ご回答ありがとうございます。

参考になりました。

2006/11/05 03:12:14
id:hoeizon No.5

hoeizon回答回数318ベストアンサー獲得回数202006/11/05 00:54:14

ポイント20pt

>ウィンドウズ付属のメモ帳で実行したいのです。

Windowsのメモ帳では、改行を置換する機能はありません。


メモ帳とほとんど同じフリーソフトの、TeraPadを使いましょう!

http://www.vector.co.jp/soft/win95/writing/se104390.html


置換前文字:\n

置換後文字:↑

で一括変換できます。

id:taroemon

ご回答ありがとうございます。

参考になりました。

2006/11/05 03:12:25
  • id:llusall
    なお、複数ファイルをまとめて、ドラッグ&ドロップすれば、それらのファイルをすべて置換することができます。

    あと、余計な事かと思いますが、
    taroemon様のご質問を拝見していますと、
    「SendKeys」や「クリップボード」の使用を質問文に記載しているようですが、これらは安定して使用するのには難があるかと思います。

    可能な限り、プログラミングでは避けることを心がけた方が良いかと思います。多くの場合、これらの使用をしなくても済むかと思います。

    また、VB、VBAでのファイルの読み書きは通常、Open関数や、FSO(FileScriptingObject)を使用します。
    この辺を押さえておくと今後とも有益かと存じます。
  • id:taroemon
    llusallさんご助言ありがとうございます。

    >「SendKeys」や「クリップボード」の使用を質問文に記載しているようですが、
    >これらは安定して使用するのには難があるかと思います。
    いただいた回答を元に自分が使えるよう、カスタマイズする際、
    素人の私にはこれらを使うことがとてもわかりやすいのです。
    難しい物になるとソースを読んでも、何が何だか分かりません。

    勉強不足は承知の上、どうしても仕事上必要なので、
    皆さんのお力をお借りしているという状態です。

    ただ、実践を通じて、今後も勉強していきたいと考えていますので、
    もし私の質問に対して、もっと良い方法がありましたら、
    ご指摘いただけると大変嬉しいです。

    >この辺を押さえておくと今後とも有益かと存じます。
    貴重なご助言ありがとうございます。
    これについては勉強しておきます。

    今後ともよろしくおねがいします。 


この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません