私は簡単なペイントプログラムを作成していて、文字列の特定の部分を取得することに固執しています。 ここに問題があります - 9パネルイメージを保存すると、各パネルのRBG値が.txtファイルに保存されます。例:文字列から値を取得する
- をjava.awt.Color [R = 0、G = 0、B = 0]
- をjava.awt.Color [R = 255、G = 255、B = 255]
- java.awt.Color [r = 255、g = 0、b = 0]
- java.awt.Color [r = 0、g = 0、b = 255]
- java.awt.Color [r = 0、g = 0、b = 0]
- java.awt.Color [r = 255、g = 255、b = 0]
- java.awt.Color [r = 255、g = 255、b = 0]
- javaここから.awt.Color [R = 255、G = 0、B = 0]
- をjava.awt.Color [R = 0、G = 0、B = 255]
、Iが呼び出しますスキャナがファイルの行を読み取るようにします。私は[]内の値をStringに抽出する最良の方法を見つける必要があります。私はトークン化ツールを使用して無駄にしようとしましたが、それでも余分な文字列に悩まされています。私は文字を操作しようとしましたが、もう一度失敗しました。私たちの括弧でデータを抽出する最良の方法は何でしょうか?個々のr = xxx、b = xxx、g = xxxの値をString []に格納する方が簡単でしょうか?ありがとう、ここに私がこれまで持っているソースがあります:
import java.awt.Color;
import java.io.*;
import java.lang.*;
import java.util.*;
//when finished, organize imports (narrow down what imports were used)
public class SaveLoad {
private boolean tryPassed, tryPassed2;
private Formatter x;
//final String[] rawData; will be where the rgb raws are stored
private Scanner xReader;
public void save(Color[] c, String s) {
//s is the filename
int counter = c.length;
//Tries to create a file and, if it does, adds the data to it.
try{
x = new Formatter(s+".txt");
tryPassed = true;
while(counter>0) {
x.format("%s. %s\n", (c.length-(counter-1)), c[counter-1]);
counter--;
}
x.close();
}catch (Exception e){
e.printStackTrace();
tryPassed = false;
}
}
//load will take paramaters of a filename(string); NOTE:::: make the file loaded specify an appendix (ex] .pixmap)
//MAYBE add a load interface with a jDropdownmenu for the filetype? add parameter String filetype.
public void load(String s, String filetype) {
//loads the file and, if successful, attempts to read it.
try{
xReader = new Scanner(new File(s+filetype));
tryPassed2 = true;
}catch(Exception e){
e.printStackTrace();
tryPassed2 = false;
System.out.println(s+filetype+" is not a valid file");
}
while(xReader.hasNext()&&tryPassed2==true) {
String inBrackets = xReader.next().substring(17);
System.out.println(inBrackets);
}
}
}
また、私の面倒な表記を無視してください。
FYI、最も重要なタグ[tag:java]を除外しました。 –
あなたが投稿する前に恥ずかしがり、約1分後に修正しました:SありがとうxP – nolasaint
実際、あなたの修正は私の意図とは反対です。タイトルに「(Java)」を追加するのではなく、質問の末尾にあるタグに[tag:java]を追加するだけです。私はすでに両方を修正しました。 –