過去ログ

                                Page    1159
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/6(木) 10:30
   ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kojima 20/2/6(木) 23:36
      ┣その2  kojima 20/2/6(木) 23:37
      ┣補足  kojima 20/2/6(木) 23:48
      ┣Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/7(金) 15:52
      ┃  ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kojima 20/2/7(金) 21:40
      ┃     ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/8(土) 17:53
      ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/7(金) 17:59
         ┗[投稿者削除]   
            ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/9(日) 22:35
               ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kojima 20/2/10(月) 11:43
                  ┗Re:複数jwwファイルの図番(同位置の文字列)の一括変換  kubo 20/2/11(火) 23:08

 ───────────────────────────────────────
 ■題名 : 複数jwwファイルの図番(同位置の文字列)の一括変換
 ■名前 : kubo
 ■日付 : 20/2/6(木) 10:30
 -------------------------------------------------------------------------
   ご教示お願いします。

1つの物件の複数の図面を書いて、
(1ファイル1図面、図面「図枠」の位置は全て同じ位置)
共通した標題欄(普通図枠の下に書かれる工事名・図面名等の枠)に書く図番を、
その複数ファイルの図番(同じ位置にある文字列)を一括して、ずらせたい
(変えたい)のです。

そのようなツールや外部変形(他の方法でもよい)をご存じありませんか。

例えば、
テキストファイルやエクセルファイルで(jwwファイルでもよい)、
変更前の文字列 と 変更後の文字列 を行毎に書き込んで、その情報で
図番(文字列)を変換していくというようなイメージを持っています。

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kojima  ■日付 : 20/2/6(木) 23:36  -------------------------------------------------------------------------
   1枚だけ以下の外変を実行してください。
外変を実行した図面と同じフォルダ内の全てのJWWファイルに対して
外変で指定した範囲内の文字を検索して、該当する文字ならば置換します。
RUby1.8専用の外変です。RUby1.9以降では動作しません。

実行前に、表題変更.txtをタブ区切りで作成しておいてください。

以下 その1


@REM 複数ファイルの指定範囲内にある文字の一括変更
@echo off
REM #jww
REM #cd
REM #ht10
REM #ht30
REM #zc
REM #zz
REM #zs
REM #hf
REM #bz
REM #h3
REM #g1
REM #1変更範囲の左下を指示してください
REM #2変更範囲の右上を指示してください
REM #hp
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -x %~f0 temp.txt
pause
goto end
#!ruby -Ks
require 'kconv'
#data_mojiとdata_noをarray2(二重配列)に収集する。
def data_no_collect(data,i,array2,data_moji,no,hash,j,b_n)
data_no=no+j
array2<<[data_moji,data_no]
i=data_next(data,i,data_moji,hash,b_n)
return i
end
#data_mojiのバイト数の分だけiを次へ進める。
def data_next(data,i,data_moji,hash,b_n)
i2=i
if data_moji=="CDataMoji"
f_i=data[i+83,1].unpack("C")[0]
m_i=data[i+84+f_i,1].unpack("C")[0]
m_byte=83+f_i+m_i+2
hash[data_moji]=m_byte
i += hash[data_moji]
elsif data_moji=="CDataSunpou"
f_i=data[i+145,1].unpack("C")[0]
m_i=data[i+146+f_i,1].unpack("C")[0]
m_byte=147+f_i+m_i
hash[data_moji]=m_byte
i += hash[data_moji]
i += 236 if b_n>=420
elsif data_moji=="CDataSolid"
if data[i+5,1].unpack("C")[0] == 10
i += hash[data_moji]+4
else
i += hash[data_moji]
end
elsif data_moji=="CDataTen"
if data[i+4,1].unpack("C")[0] == 100
i += hash[data_moji]+20
else
i += hash[data_moji]
end
else
i += hash[data_moji]
end
return i
end
#文字のバイト数
def size(str)
if RUBY_VERSION =~/^1\.9|^2|^3/
return str.bytesize
else
return str.size
end
end
#文字データの変更
def ch_henkan(data,i,data_moji,b_n,m_hash,x_min,y_min,x_max,y_max)
pl,kiten,lc,sun_flg,ly,lg,z=data[i,15].unpack("LCSSSSS")
x1,y1,x2,y2,mojisyu=data[i+15,36].unpack("ddddL")
w,h,d,kakudo=data[i+51,32].unpack("dddd")
f_i=data[i+83,1].unpack("C")[0]
font=data[i+84,f_i]
m_i=data[i+84+f_i,1].unpack("C")[0]
if m_i==255
m_i2=data[i+84+f_i+1,1].unpack("S")[0]
str=data[i+85+f_i+1,m_i2].to_s
else
str=data[i+85+f_i,m_i].to_s
end
if x_min<x1 && x_min<x2 && x_max>x1 && x_max>x2 && x_min<x1 && x_min<x2 && x_max>x1 && x_max>x2 &&
y_min<y1 && y_min<y2 && y_max>y1 && y_max>y2 && y_min<y1 && y_min<y2 && y_max>y1 && y_max>y2

if m_hash[str]
str2=m_hash[str]
else
str2=str
end
else
str2=str
end
$data<<[pl,kiten,lc,sun_flg,ly,lg,z].pack("LCSSSSS")
$data<<[x1,y1,x2,y2,mojisyu].pack("ddddL")
$data<<[w,h,d,kakudo,f_i].pack("ddddC")
$data<<font
if size(str2)<255
$data<<[size(str2)].pack("C")
else
$data<<[255].pack("C")
$data<<[size(str2)].pack("S")
end
$data<<str2
n=1
if str==str2
n=0
end

return n
end
printf("表題変更.txtの編集は終了していますか? YES:1 NO:2\n")
i=STDIN.gets.chomp.to_i
unless i==1
system("notepad 表題変更.txt")
end

moji_hash={}
f=open("表題変更.txt","r")
while f.gets
xy=$_.chomp.split("\t")
moji_hash[xy[0]]=xy[1]
end
f.close

 ───────────────────────────────────────  ■題名 : その2  ■名前 : kojima  ■日付 : 20/2/6(木) 23:37  -------------------------------------------------------------------------
   以下、前文からの続き


$stdout=open("jwc_temp.txt","w")
x_a=[];y_a=[]
puts "hd"
while ARGF.gets
xy=$_.split
if xy[0]=~/^hq/
elsif xy[0]=~/^hzs/
p_x=xy[1].to_f
p_y=xy[2].to_f
elsif xy[0]=~/^file=/
siz=size(xy[0])
if siz==5
STDERR.puts("ファルが保存されていないのでフォルダ名が特定できません")
STDERR.puts("終了します")
exit
end
path_file=xy[0][5..-1]
path,file=File.split(path_file)
# path.gsub!("\\","/")
elsif xy[0]=~/^hp\d/
x_a<<xy[1].to_f
y_a<<xy[2].to_f
elsif xy[0]=~/^ch/
x_min=x_a.min;x_max=x_a.max
y_min=y_a.min;y_max=y_a.max
if $_=~/\"/
moji=$'.chomp
moji_zahyo=$`
end
x=xy[1].to_f;y=xy[2].to_f;
if x_min<x && x_max>x &&y_min<y && y_max>y
if moji_hash[moji]
printf("%s \"%s\n",moji_zahyo,moji_hash[moji])
else
print $_
end
else
print $_
end

else
print $_
end
end
$stdout.close
x_min=x_a.min-p_x/2;x_max=x_a.max-p_x/2
y_min=y_a.min-p_y/2;y_max=y_a.max-p_y/2
file_a=Dir.entries(path).select{|item|item=~/\.jww$/i}
file_a.each{|file1|
i=0;data="";$data=""
open(path+"\\"+file1,"rb"){|f|data=f.read}
#◎jwwデータの宣言
i += 8
#◎図面のバージョン
b_n=data[i,4].unpack("L")[0];
if b_n<420
STDERR.printf("バージョンNO%dには未対応です。処理を中止します\n",b_n)
exit
end
i += 4
#◎メモ欄の記載文
memo_byte=data[i,1].unpack("C")[0];
i += 1+memo_byte
#◎図面サイズ
i += 4
#◎レイヤグループ・レイヤ状態
i += 4
0.upto(15){|i1|
data[i,4].unpack("L")[0]
i += 20
0.upto(15){|i2|i += 8}
}
i += 156
#◎レイヤ名・レイヤグループ名
0.upto(15){|i1|
0.upto(15){|i2|
byte=data[i,1].unpack("C")[0]
i += byte+1
}
}
0.upto(15){|i1|
byte=data[i,1].unpack("C")[0]
i += byte+1
}
i += 1140
0.upto(256){|i1|i += 8}
0.upto(256){|i1|
lcn_byte=data[i,1].unpack("C")[0]
i += 1+lcn_byte
i += 16
}
#◎SXF対応拡張線種定義拡張
0.upto(32){|i1|i += 16}
0.upto(32){|i1|
ltn_byte=data[i,1].unpack("C")[0]
i += 1+ltn_byte
i += 84
}
i += 380
#◎図形(線・円・点・文字・ソリッド・寸法図形・ブロック図形)の総数
int1=data[i,1].unpack("C")[0];int2=data[i+1,1].unpack("C")[0]
if int1==255 && int2==255
i += 2
n2=data[i,4].unpack("L")[0]
i += 4
else
n2=data[i,2].unpack("S")[0]
i += 2
end
i2=i
$data<<data[0,i2]
moji_n=0
#◎図形(線・円・点・文字・ソリッド・寸法図形・ブロック図形)のデータNOの検出
hash={"CDataSen"=>47,"CDataTen"=>35,"CDataEnko"=>75,"CDataSolid"=>79,"CDataBlock"=>59}
data_moji="";array2=[];no=0;j=0;has2={}
while no<n2
no += 1
int=data[i,2].unpack("S")[0]
if int==255*256+255
i += 4
n=data[i,2].unpack("S")[0]
i += 2
data_moji=data[i,n]
i += n
$data<<data[i2..i-1];i2=i
i=data_no_collect(data,i,array2,data_moji,no,hash,j,b_n)
if data_moji=="CDataMoji"
moji_no=ch_henkan(data,i2,data_moji,b_n,moji_hash,x_min,y_min,x_max,y_max)
moji_n +=moji_no
else
$data<<data[i2..i-1]
end
i2=i
j += 1
elsif int==127*256+255
i += 2
n=data[i,4].unpack("L")[0]-(128*256*256*256)
i += 4
array2.each{|item|
if item[1] == n
data_moji=item[0]
break
end
}
$data<<data[i2..i-1];i2=i
i=data_next(data,i,data_moji,hash,b_n)
if data_moji=="CDataMoji"
moji_no=ch_henkan(data,i2,data_moji,b_n,moji_hash,x_min,y_min,x_max,y_max)
moji_n +=moji_no
else
$data<<data[i2..i-1]
end
i2=i
else
n=data[i,2].unpack("S")[0]-(128*256)
i += 2
array2.each{|item|
if item[1] == n
data_moji=item[0]
break
end
}
$data<<data[i2..i-1];i2=i
i=data_next(data,i,data_moji,hash,b_n)
if data_moji=="CDataMoji"
moji_no=ch_henkan(data,i2,data_moji,b_n,moji_hash,x_min,y_min,x_max,y_max)
moji_n +=moji_no
else
$data<<data[i2..i-1]
end
i2=i
end
end
$data<<data[i..-1]
if moji_n>0
new_file=path+"\\"+file1+".jww"
open(new_file,"wb"){|f|f.write $data}
STDERR.puts("#{new_file}を作成しました")
else
STDERR.puts("#{file1}は変更無し")
end
}
__END__
:end

 ───────────────────────────────────────  ■題名 : 補足  ■名前 : kojima  ■日付 : 20/2/6(木) 23:48  -------------------------------------------------------------------------
   怖いので、元の図面は変更しません。

指定範囲内に、該当する文字があった場合だけ、拡張子.jwwを追加した
新しいファイルを作成します。(拡張子.jww.jww)

同じファイル名の.jwwファイルと.jww.jwwファイルがある場合は、
.jwwファイルが.jw.jwwとなって、すでにある.jww.jwwファイル
を上書きしてしまいます。
無いことを確認の上、実行してください。

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kubo  ■日付 : 20/2/7(金) 15:52  -------------------------------------------------------------------------
   ▼kojimaさん:

ありがとうございます。

R.Nさまのコメントも参考にして、実行することができました。

なお、できれば、「表題変更.txt」を置く位置は、外変のあるフォルダでは
なく、外変を実行するjwwデータのあるフォルダにしていただければ、
「表題変更.txt」の作成、変更がしやすいように思いました。

kojimaさま、ありがとうございました。
R.Nさま、ありがとうございました。

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kojima  ■日付 : 20/2/7(金) 21:40  -------------------------------------------------------------------------
   >なお、できれば、「表題変更.txt」を置く位置は、外変のあるフォルダでは
>なく、外変を実行するjwwデータのあるフォルダにしていただければ、
>「表題変更.txt」の作成、変更がしやすいように思いました。

115行目から173行目を変更してください。

↓変更する部分

printf("表題変更.txtの編集は終了していますか? YES:1 NO:2\n")
i=STDIN.gets.chomp.to_i
unless i==1
system("notepad #{path}\\表題変更.txt")
end

moji_hash={}
f=open("#{path}\\表題変更.txt","r")
while f.gets
xy=$_.chomp.split("\t")
moji_hash[xy[0]]=xy[1]
end
f.close

$stdout=open("jwc_temp.txt","w")
x_a=[];y_a=[]
puts "hd"
while ARGF.gets
xy=$_.split
if xy[0]=~/^hq/
elsif xy[0]=~/^hzs/
p_x=xy[1].to_f
p_y=xy[2].to_f
elsif xy[0]=~/^file=/
siz=size(xy[0])
if siz==5
STDERR.puts("ファルが保存されていないのでフォルダ名が特定できません")
STDERR.puts("終了します")
exit
end
path_file=xy[0][5..-1]
path,file=File.split(path_file)
# path.gsub!("\\","/")
elsif xy[0]=~/^hp\d/
x_a<<xy[1].to_f
y_a<<xy[2].to_f
elsif xy[0]=~/^ch/
x_min=x_a.min;x_max=x_a.max
y_min=y_a.min;y_max=y_a.max
if $_=~/\"/
moji=$'.chomp
moji_zahyo=$`
end
x=xy[1].to_f;y=xy[2].to_f;
if x_min<x && x_max>x &&y_min<y && y_max>y
if moji_hash[moji]
printf("%s \"%s\n",moji_zahyo,moji_hash[moji])
else
print $_
end
else
print $_
end

else
print $_
end
end
$stdout.close


↓以下の文に変更

f=open("temp.txt","r")
while f.gets
xy=$_.split
if xy[0]=~/^file=/
siz=size(xy[0])
if siz==5
STDERR.puts("ファルが保存されていないのでフォルダ名が特定できません")
STDERR.puts("終了します")
exit
end
path_file=xy[0][5..-1]
path,file=File.split(path_file)
end
end
f.close
printf("表題変更.txtの編集は終了していますか? YES:1 NO:2\n")
i=STDIN.gets.chomp.to_i
unless i==1
system("notepad #{path}\\表題変更.txt")
end

moji_hash={}
f=open("#{path}\\表題変更.txt","r")
while f.gets
xy=$_.chomp.split("\t")
moji_hash[xy[0]]=xy[1]
end
f.close

$stdout=open("jwc_temp.txt","w")
x_a=[];y_a=[]
puts "hd"
while ARGF.gets
xy=$_.split
if xy[0]=~/^hq/
elsif xy[0]=~/^hzs/
p_x=xy[1].to_f
p_y=xy[2].to_f
elsif xy[0]=~/^hp\d/
x_a<<xy[1].to_f
y_a<<xy[2].to_f
elsif xy[0]=~/^ch/
x_min=x_a.min;x_max=x_a.max
y_min=y_a.min;y_max=y_a.max
if $_=~/\"/
moji=$'.chomp
moji_zahyo=$`
end
x=xy[1].to_f;y=xy[2].to_f;
if x_min<x && x_max>x &&y_min<y && y_max>y
if moji_hash[moji]
printf("%s \"%s\n",moji_zahyo,moji_hash[moji])
else
print $_
end
else
print $_
end

else
print $_
end
end
$stdout.close

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kubo  ■日付 : 20/2/8(土) 17:53  -------------------------------------------------------------------------
   ▼kojimaさん:

お世話になります。

修正をしていただき大変ありがとうございます。
「表題変更.txt」の確認・修正がしやすくなりました。

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

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kubo  ■日付 : 20/2/7(金) 17:59  -------------------------------------------------------------------------
   ▼kojimaさん:

お世話になります。
実際に1物件、使用させていただきました。
図面の順番を整理して、正式に図番を確定・編集させたあと、あとから追加に
なった図面以降の全ての図面の図番を、ずらせて行くのは大変でしたので、
ありがたく使用させていただきました。

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

なお、変更後の図面(ファイル名)については、元が ○○○.jww としたとき
変更後が ○○○_.jww のように、拡張子の前の名前の部分に文字(全ファイル
共通で)を追加できる形にはならないでしょうか。

無理なら、
臨時のフォルダを作り、そこに文字列変更したいファイルだけコピーして、
そのフォルダで外変を実行すれば、上書きしても元のファイルは残るので
上書きの方法でもよいです。

誠に勝手を申しますが、可能なら、よろしくお願いします。

 ───────────────────────────────────────  ■題名 : [投稿者削除]  ■名前 :  ■日付 :  -------------------------------------------------------------------------
   この書き込みは投稿者によって削除されました。(20/4/5(日) 11:19)

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kubo  ■日付 : 20/2/9(日) 22:35  -------------------------------------------------------------------------
   ▼R.Nさん:

コメントありがとうございます。

.jww.jww が拡張子になるとは思っていません。
それでは、Jw_cadで読み込めないでしょうから。
また、禁則文字についても承知しています。

外変の構文は理解できないのですが、

新しい batファイルの 309 行目の
new_file=path+"\\"+file1+".jww"
で、新しいファイル名を作成されているということは、なんとなくわかりました。
元のファイル名(拡張子込み)の末尾に .jww を加えておられる・・・と。
それ以上のことはわかりません。

このコメントを拝見したあと、試しに、.jww を除いて
new_file=path+"\\"+file1+""
にさせてもらったら、元のファイル名に上書きされました。

それで正しかったのかはわかりません。
ファイル内容を見る限り、変更したい箇所だけ書き換わっていましたので
問題ないように思いました。


>▼kuboさん:
>
>>なお、変更後の図面(ファイル名)については、元が ○○○.jww としたとき
>>変更後が ○○○_.jww のように、拡張子の前の名前の部分に文字(全ファイル
>>共通で)を追加できる形にはならないでしょうか。
>>
>>無理なら、
>>臨時のフォルダを作り、そこに文字列変更したいファイルだけコピーして、
>>そのフォルダで外変を実行すれば、上書きしても元のファイルは残るので
>>上書きの方法でもよいです。
>
>現状の外変スクリプトで、出力される「Jwwデータファイル」は、
> 例;元ファイル名.拡張子 ⇒ 「ABC.jww」とすると、
> ┌──────────┬──────────┐
> │ 元ファイル │ 外変出力ファイル │
> ├─────┬────┼─────┬────┤
> │ファイル名│ 拡張子 │ファイル名│ 拡張子 │
> ├─────┼────┼─────┼────┤
> │ ABC │ jww │ ABC.jww │ jww │ ⇒ ABC.jww.jww(出力)
> └─────┴────┴─────┴────┘
> ↑ ※
>と、なりますが、
>
>要望の、「ABC_.jww」出力にスクリプトを改変したとしても、
> ┌─────┬────┬─────┬────┐
> │ ABC │ jww │ ABC_ │ jww │ ⇒ ABC_.jww(出力)
> └─────┴────┴─────┴────┘
>
>となるだけで、
>
>何れにしても、出力ファイル名を編集するということでは、同じことかと思います。
>(拡張子が".jww.jww"となる?、と勘違いされているのでは〜、と思いましたので---、エクスプローラで"ABC.jww.jww"ファイルを左クリックすると、ファイル名(ABC.jww)が反転表示(編集状態)されますので、確認下さい)
>
>※ 蛇足で、
>ファイル名変更時、禁止文字を使うと、エラー吹き出し( \/:*?"<>|)が表示されます。(詳細には、ネット検索)
>
>出力ファイル名を外変で任意入力したい、ということであれば、話は別ですが---

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kojima  ■日付 : 20/2/10(月) 11:43  -------------------------------------------------------------------------
   ▼kuboさん:
>このコメントを拝見したあと、試しに、.jww を除いて
>new_file=path+"\\"+file1+""
>にさせてもらったら、元のファイル名に上書きされました。
>
>それで正しかったのかはわかりません。
>ファイル内容を見る限り、変更したい箇所だけ書き換わっていましたので
>問題ないように思いました。


これは怖いからやめてください。
不具合があった時、開けなくなる可能性があります。
手作業での上書きと違って、バックファイルが作成されません。


bakファイルを作成して、元図を上書きの場合は、以下のようにしてください。

if moji_n>0
new_file=path+"\\"+file1+".jww"
open(new_file,"wb"){|f|f.write $data}
STDERR.puts("#{new_file}を作成しました")
else
STDERR.puts("#{file1}は変更無し")
end


を以下のように修正する。


if moji_n>0
new_file=path+"\\"+file1.sub(/\.jww$/i,".bak")
open(new_file,"wb"){|fw|fw.write(data)}
new_file2=path+"\\"+file1
open(new_file2,"wb"){|f|f.write $data}
STDERR.puts("#{new_file}を作成し\n#{new_file2}を修正しました")
else
STDERR.puts("#{file1}は変更無し")
end

 ───────────────────────────────────────  ■題名 : Re:複数jwwファイルの図番(同位置の文字列)の一括変換  ■名前 : kubo  ■日付 : 20/2/11(火) 23:08  -------------------------------------------------------------------------
   ▼kojimaさん:

大変ありがとうございました。
より便利になりました。


>▼kuboさん:
>>このコメントを拝見したあと、試しに、.jww を除いて
>>new_file=path+"\\"+file1+""
>>にさせてもらったら、元のファイル名に上書きされました。
>>
>>それで正しかったのかはわかりません。
>>ファイル内容を見る限り、変更したい箇所だけ書き換わっていましたので
>>問題ないように思いました。
>
>
>これは怖いからやめてください。
>不具合があった時、開けなくなる可能性があります。
>手作業での上書きと違って、バックファイルが作成されません。
>
>
>bakファイルを作成して、元図を上書きの場合は、以下のようにしてください。
>
>if moji_n>0
>new_file=path+"\\"+file1+".jww"
>open(new_file,"wb"){|f|f.write $data}
>STDERR.puts("#{new_file}を作成しました")
>else
>STDERR.puts("#{file1}は変更無し")
>end
>
>
>を以下のように修正する。
>
>
>if moji_n>0
>new_file=path+"\\"+file1.sub(/\.jww$/i,".bak")
>open(new_file,"wb"){|fw|fw.write(data)}
>new_file2=path+"\\"+file1
>open(new_file2,"wb"){|f|f.write $data}
>STDERR.puts("#{new_file}を作成し\n#{new_file2}を修正しました")
>else
>STDERR.puts("#{file1}は変更無し")
>end

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 1159