Jw_cad 相談室−その2 New

 Jw_cad についての相談の場としてお使いください
情報の交換には Jw_cad 情報交換室 をご利用ください
なお、情報交換室と相談室の両方に同じ内容を投稿するのはご遠慮ください

2009年9月以前の発言過去ログのページからご覧ください。

それ以降の過去ログは消失しています。
申し訳ありませんが、復活の予定はありません。


  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
14 / 356 ツリー    ←次へ | 前へ→

複数jwwファイルの図番(同位置の文字列)の一括変換 kubo 20/2/6(木) 10:30

Re:複数jwwファイルの図番(同位置の文字列)の一括... kubo 20/2/9(日) 22:35
Re:複数jwwファイルの図番(同位置の文字列)の一括... R.N 20/2/10(月) 1:00
Re:複数jwwファイルの図番(同位置の文字列)の一括... kojima 20/2/10(月) 11:43
Re:複数jwwファイルの図番(同位置の文字列)の一括... kubo 20/2/11(火) 23:08

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)が反転表示(編集状態)されますので、確認下さい)
>
>※ 蛇足で、
>ファイル名変更時、禁止文字を使うと、エラー吹き出し( \/:*?"<>|)が表示されます。(詳細には、ネット検索)
>
>出力ファイル名を外変で任意入力したい、ということであれば、話は別ですが---

引用なし

パスワード


<Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko@93.103.168.203.megaegg.ne.jp>
・ツリー全体表示

Re:複数jwwファイルの図番(同位置の文字...
 R.N  - 20/2/10(月) 1:00 -
▼kuboさん:

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

余計なことを書いて、すみません^^^

>外変の構文は理解できないのですが、
>
>新しい batファイルの 309 行目の
>new_file=path+"\\"+file1+".jww"
>で、新しいファイル名を作成されているということは、なんとなくわかりました。
>元のファイル名(拡張子込み)の末尾に .jww を加えておられる・・・と。
>それ以上のことはわかりません。
>
>このコメントを拝見したあと、試しに、.jww を除いて
>new_file=path+"\\"+file1+""
>にさせてもらったら、元のファイル名に上書きされました。

new_file=path+"\\"+file1+".jww" ⇒ new_file=path+"\\"+file1
(問題はないのですが、空文字を付加しても)

作者として、
色々な状況を想定・蓄積とかで、安全な方法とか、色々配慮してプログラミングされていると思います。

引用なし

パスワード


<Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0@pl40016.ag2001.nttpc.ne.jp>
・ツリー全体表示

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

引用なし

パスワード


<Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; MALNJS; rv:11.0) like Gecko@ai126151227120.55.access-internet.ne.jp>
・ツリー全体表示

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

引用なし

パスワード


<Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko@93.103.168.203.megaegg.ne.jp>
・ツリー全体表示

14 / 356 ツリー    ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
 704024
ページ:  ┃  記事番号:  

C-BOARD Moyuku v1.03b3
Jw_cad Copyright (C)1997-2016 Jiro Shimizu & Yoshifumi Tanaka