Sandor.Oros:
ライン(CNC G-コード)番号:文字の14415番号:263950私は、テキストファイルを持っています
私はそれにいくつかのツールコマンドを変更する必要があります。私は、例えば、「T ***」、「T120」を見つけた場合、私は例「T30」のために、ユーザーによって与えられ、他のツールコマンドのためにそれを交換する必要があります。
私は作業プログラム(JavaFXのは)、TXTファイル、変更ツール、輸出のtxtファイルを読んでwritedが、変更方法は本当に遅いです。
それはそれは私が交換する必要がある場合を除き、単純な形で、私は、他の文字列変数へのすべての文字をコピーし、今どのように動作するかです:
String originalGcode come from txt file reading
String newGcode = "";
for ( int i = 0; i < originalGcode.length(); i++ ){
if ( condition == true ){
newGcode += newToolCodeFromUser;
} else {
newGcode += originalGcode.charAt(i);
}
今では34秒かかります。あなたが任意のアイデアを持っていますか、どのように1〜2秒の下でそれを行うには?
交換するので、良い解決策ではありません - 私はGコードでツールコードの多くを持って - (T120 forexample)一つのツールのコードが何度も表示されます。 - 例えば:私はプログラムでライン50とライン60にライン20とライン30でT120とT30を持っている - まず、ユーザが、T30にT120を変更したい - >私は交換する必要がある - 第二に、ユーザーはT77にT30を変更したいです唯一のライン50と60でT30が、私はので、最初の変更コマンドのライン20と30で、すでにT30を持っています。
私はJAVAのプログラミングに新しいです、あなたのソリューションを説明してください:)
ティムBiegeleisen:
交換用のロジックでのサイクルが存在しないと仮定すると、あなただけの代替品のシリーズを行うことができるかもしれません。
String originalGcode = "T10 T30 T120 T20";
String newGcode = originalGcode.replace("T30", "T77")
.replace("T120", "T30");
System.out.println(newGcode);
この版画:
T10 T77 T30 T20