Java 如何使用代码的颜色打印

Java 如何使用代码的颜色打印,java,Java,我有一段代码,可以从文件中读取,并使用模式打印出来 打印示例: 果实 阿佩尔斯=10 班纳纳斯=5 我怎么能用颜色打印,因为我想用红色打印苹果,用黄色打印香蕉字 我怎样才能用颜色打印? 我的意思是“TipMaterialKamera2”用红色打印,itemMatcherKamera2用黄色打印 ///////////////////////////////////////////////////////////////////布顿伯爵卡迈拉·加尼图拉+布顿+罗莱/////////////////

我有一段代码,可以从文件中读取,并使用模式打印出来

打印示例:

果实 阿佩尔斯=10 班纳纳斯=5

我怎么能用颜色打印,因为我想用红色打印苹果,用黄色打印香蕉字

我怎样才能用颜色打印? 我的意思是“TipMaterialKamera2”用红色打印,itemMatcherKamera2用黄色打印

///////////////////////////////////////////////////////////////////布顿伯爵卡迈拉·加尼图拉+布顿+罗莱///////////////////////////////////////////////////////////////////

 JTextPane Kamera22 = new JTextPane();
 Kamera22.setForeground(Color.blue);

 Kamera22.setEditable(false);
 Kamera22.setBounds(330, 63, 338, 257);
 framePrincipal.getContentPane().add(Kamera22);

         JButton btnKamera2 = new JButton("Count Kamera 2");
         btnKamera2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {

                String lineKamera2 = null;



                Pattern CategorieKamera2 = Pattern.compile ("\\{([^}]*)\\}");
                Pattern CategorieSiCantitateKamera2 = Pattern.compile("^(\\w+)=(\\d+)$"); // CITESTE TOT CE ESTE SUB CATEGORIA ( ) SI AFISAZA VALORILE CUVANT=VALOARE EX: Nio=10\Io=15



                StringBuilder resultKamera2 = new StringBuilder();

                {
                try (BufferedReader brKamera2 = new BufferedReader(new FileReader("D:/test1.txt"))) {
                while ((lineKamera2 = brKamera2.readLine()) != null) {

                Matcher categoryMatcherKamera2 = CategorieKamera2.matcher(lineKamera2);                    
                Matcher itemMatcherKamera2 = CategorieSiCantitateKamera2.matcher(lineKamera2);


                if (categoryMatcherKamera2.matches()) {
                if (resultKamera2.length() > 0) { // found new category, put on new line

                    resultKamera2.append(System.getProperty("line.separator"));

                }


                String Kamera2 = categoryMatcherKamera2.group(1); // Citeste tot ce apare cu Nio \ IO Pentru Sockel ( CITESTE TOT CE ESTE SUB CATEGORIA (SOCKEL)!)




                //resultKamera2.append(String.format("<font color=\"%s\">%s</font>",(Kamera2).append(" ")));


                //result.append(System.getProperty("line.separator"));
                } else if (itemMatcherKamera2.matches()) {

                String TipMaterialKamera2 = itemMatcherKamera2.group(1); // NIo\IO
                String CantitateKamera2 = itemMatcherKamera2.group(2); // 6 bucati , 8 , 10 ... n bucati
                resultKamera2.append(System.getProperty("line.separator"));
                resultKamera2.append(TipMaterialKamera2).append(": ")// Nio\IO:
                .append(CantitateKamera2) // Nio\Io 6
                .append(" bucati "); // Afiseaza cuv. "bucati" dupa cantitate


                }
                Kamera22.setText(resultKamera2.toString());
                }
                } catch (FileNotFoundException e1) {

                e1.printStackTrace();
                } catch (IOException e1) {

                e1.printStackTrace();
                    }
                 }

            }

         });
JTextPane Kamera22=新JTextPane();
Kamera22.设置前景(颜色:蓝色);
Kamera22.setEditable(假);
卡迈拉22.挫折(330、63、338、257);
framePrincipal.getContentPane().add(Kamera22);
JButton btnKamera2=新JButton(“卡米拉伯爵2”);
btnKamera2.addActionListener(新ActionListener(){
已执行的公共无效操作(操作事件e){
字符串lineKamera2=null;
Pattern CategorieKamera2=Pattern.compile(“\\{([^}]*)\\}”);
模式分类Cantitatekamera2=Pattern.compile(“^(\\w+)=(\\d+$”);//子分类的总分类()SI AFISAZA VALORILE CUVANT=VALOARE EX:Nio=10\Io=15
StringBuilder resultKamera2=新的StringBuilder();
{
try(BufferedReader brKamera2=new BufferedReader(new FileReader(“D:/test1.txt”)){
而((lineKamera2=brKamera2.readLine())!=null){
Matcher categorymacherkamera2=CategorieKamera2.Matcher(lineKamera2);
Matcher itemMatcherKamera2=类别Cantitatekamera2.Matcher(lineKamera2);
if(categoryMatcherKamera2.matches()){
如果(resultKamera2.length()>0){//找到了新的类别,则放在新行上
resultKamera2.append(System.getProperty(“line.separator”);
}
String Kamera2=categoryMatcherKamera2.group(1);//Citeste tot ce apare cu Nio\IO Pentru Sockel(Citeste tot ce ESTE SUB CATEGRIA(Sockel)!)
//resultKamera2.append(String.format(“%s”),(Kamera2.append(“”));
//append(System.getProperty(“line.separator”);
}else if(itemMatcherKamera2.matches()){
字符串TipMaterialCamera2=itemMatcherKamera2.group(1);//NIo\IO
字符串CantitateKamera2=itemMatcherKamera2.group(2);//6布卡蒂,8,10…n布卡蒂
resultKamera2.append(System.getProperty(“line.separator”);
resultKamera2.append(TipMaterialKamera2.append(“:”)//Nio\IO:
.append(CantitateKamera2)//Nio\Io 6
.append(“布卡蒂”);//阿菲塞扎·库夫。“布卡蒂”双调子
}
Kamera22.setText(resultKamera2.toString());
}
}捕获(FileNotFoundException e1){
e1.printStackTrace();
}捕获(IOE1异常){
e1.printStackTrace();
}
}
}
});

如果您需要按钮上有不同颜色的文本,请尝试:

if (myString.equals("TipMaterialKamera2")) {//use switch if you are on jdk 7
    btnKarema2.setForeground(java.awt.Color.RED);
} else if (myString.equals("itemMatcherKamera2")){
    btnKarema2.setForeground(java.awt.Color.YELLOW);
} else {
    btnKarema2.setForeground(java.awt.Color.GREEN);/default
}

它是关于将文本打印到Jpanel而不是按钮的