- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
只是尝试打印第 31 行的 LOL,或者任何人都有更好的方法从下面保存的文本文件中返回余额。请随意分享,我在这个问题上陷入了困境。出现错误:
"Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at TopUpScreen.Reading(TopUpScreen.java:35)
at TopUpScreen.balanceAmmount(TopUpScreen.java:56)
at TopUpScreen$2.actionPerformed(TopUpScreen.java:183)"
如果有人知道为什么,我可能会做一些非常愚蠢的事情。但我无法找出为什么会发生这种情况。
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.io.*;
import java.util.*;
class TopUpScreen extends JDialog
{
private JPanel mainPanel;
Boolean errormsg = false;
String errorMessage = "";
String safetyMessage = "";
public static String Reading(String FileName, String Returned) {
try {
ArrayList<String> Trains = new ArrayList<String>();
String[] arrayed_line = null;
int count = 0;
//int count1 = 1;
//String[] Returned = ;
File file = new File(FileName);
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = bufferedReader.readLine()) != null)
{
if(line.matches(Returned)){
System.out.println("LOL");
}
stringBuffer.append(line);
arrayed_line[count] = line;
count ++;
Trains.add(line + "\n");
stringBuffer.append("\n");
}
fileReader.close();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println();
//return Returned;
return FileName;
}
public void balanceAmmount(String name){
String balance = null;
balance = Reading("TopUp.txt", name);
//System.out.println(balance);
//return balance;
}
public static void WriterFile(String data,String filetype)
{
try{
//String data = " This content will append to the end of the file";
File file = new File(filetype);
//if file doesnt exists, then create it
if(!file.exists()){
file.createNewFile();
}
//true = append file
FileWriter fileWritter = new FileWriter(file.getName(),true);
BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
bufferWritter.write(data);
bufferWritter.close();
//System.out.println("Done");
}catch(IOException e){
e.printStackTrace();
}
}
public TopUpScreen()
{
setPanels();
setModalityType(ModalityType.APPLICATION_MODAL);
setSize(400, 350);
setVisible(true);
}
JLabel ammount = new JLabel("Top Up Ammount: $");
JLabel name = new JLabel("Name:");
JLabel billingAddress = new JLabel("Billing Address:");
JLabel cardNumber = new JLabel("Card Number:");
JLabel cardName = new JLabel("Card Name:");
JLabel expiryDate = new JLabel("Expirary Date:");
JLabel errorField = new JLabel();
JTextField ammountField = new JTextField();
JTextField nameField = new JTextField();
JTextField billingAddressField = new JTextField();
JTextField cardNameField = new JTextField();
JTextField cardNumberField = new JTextField();
JTextField expiryDateField = new JTextField();
public void setPanels()
{
mainPanel = new JPanel(new GridLayout(0, 2));
JPanel containerPanel = new JPanel(new GridLayout(0, 1));
JPanel lowerPanel = new JPanel(new FlowLayout());
JPanel errorPanel = new JPanel(new FlowLayout());
JButton apply = new JButton("PAY");
JButton cancel = new JButton("Cancel");
cancel.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
dispose();
}
});
apply.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
errorMessage= "";
safetyMessage= "";
String timestamp = new java.text.SimpleDateFormat("MM/dd/yyyy h:mm:ss a").format(new Date());
String ammountS = ammountField.getText();
String nameS = nameField.getText();
String billingAddressS = billingAddressField.getText();
String cardNameS = cardNameField.getText();
String cardNumberS = cardNumberField.getText();
String expiryDateS = expiryDateField.getText();
if(ammountS.matches("[a-zA-Z]+")){
safetyMessage += "Top Ammount invalid<br/>";
}else{errorMessage += "";}
if(ammountS == null || ammountS.isEmpty()){
safetyMessage += "Please Enter an Ammount!<br/>";
}else{errorMessage += "";}
if(nameS == null || nameS.isEmpty()){
safetyMessage += "Please Enter an Name!<br/>";
}else{errorMessage += "";}
if(billingAddressS == null || billingAddressS.isEmpty()){
safetyMessage += "Please Enter a Billing Address!<br/>";
}else{errorMessage += "";}
if(cardNameS == null || cardNameS.isEmpty()){
safetyMessage += "Please Enter a Card Name!<br/>";
}else{errorMessage += "";}
if(cardNumberS == null || cardNumberS.isEmpty()){
safetyMessage += "Please Enter a Card Number!<br/>";
}else{errorMessage += "";}
if(expiryDateS == null || expiryDateS.isEmpty()){
safetyMessage += "Please Enter a Expiry Date!<br/>";
}else{errorMessage += "";}
if (safetyMessage == ""){
errorMessage += "Successfully Topped Up With: $"+ ammountS;
errorField.setText(errorMessage);
errormsg = true;
}else{
errorMessage += "<html>";
errorMessage += safetyMessage;
errorMessage += "</html>";
errorField.setText(errorMessage);
}
if (errormsg == true){
WriterFile("######## START OF TRANSACTION ########\n","TopUp.txt");
WriterFile("Name: "+ nameS+"\n","TopUp.txt");
WriterFile("DATE: "+ timestamp+"\n","TopUp.txt");
WriterFile("Ammount: "+ ammountS+"\n","TopUp.txt");
WriterFile("CardName: "+ cardNameS+"\n","TopUp.txt");
WriterFile("Address: "+ billingAddressS+"\n","TopUp.txt");
WriterFile("Card Number: "+ cardNumberS+"\n","TopUp.txt");
WriterFile("ExpiryDate: "+ expiryDateS+"\n","TopUp.txt");
WriterFile("######## END OF TRANSACTION ########\n","TopUp.txt");
topUpAlertWindow TopUpAlertWindow = new topUpAlertWindow();
balanceAmmount(nameS);
//dispose();
}
}
});
mainPanel.add(ammount);
mainPanel.add(ammountField);
mainPanel.add(name);
mainPanel.add(nameField);
mainPanel.add(billingAddress);
mainPanel.add(billingAddressField);
mainPanel.add(cardName);
mainPanel.add(cardNameField);
mainPanel.add(cardNumber);
mainPanel.add(cardNumberField);
mainPanel.add(expiryDate);
mainPanel.add(expiryDateField);
errorPanel.add(errorField);
lowerPanel.add(apply);
lowerPanel.add(cancel);
containerPanel.add(mainPanel);
containerPanel.add(lowerPanel);
containerPanel.add(errorPanel);
add(containerPanel);
}
}
最佳答案
您的数组 arrayed_line
从未初始化。
您必须使用固定值对其进行初始化。
String[] arrayed_line = new String[5];
我认为这在你的解决方案中是不可能的。所以你必须使用ArrayList
关于Java AWT-EventQueue-0 不知道为什么还通过文本文件读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30207691/
AWT-EventQueue 线程和 AWT-Shutdown 线程没有在我们的应用程序中关闭。有没有一种调试技术可以找出它们不存在的原因?有什么特别的东西要寻找吗? 最佳答案 如果你的意思是关闭所有
java.awt.* 和 java.awt.event.* 有什么区别? 最佳答案 这只是两个不同的包。 当您说import java.awt.*时,它仅导入那些完全属于java.awt包的类,而不是
我正在将 aadhar 集成到 liferay 中。我尝试了这个链接 https://developer.uidai.gov.in/site/book/export/html/18 所以我想将其集成到
我想知道如何确定 Java.awt.Rectangle 是否包含特定 Java.awt.Color 的像素。我一直在到处寻找,但找不到任何关于此的信息,甚至找不到任何可能的信息。 所以我想知道如何确定
我试图在组件和图像之间切换面板的内容,它适用于组件: imgpanel.removeAll(); Component comp; if ((comp = player.getVisualCompone
我在使用 JAVA 编码时遇到一些错误,我一直在尝试解决这个问题,也试图找到其他有同样问题的人并修复它,但没有任何效果... 嗯..这是代码 package ca.vanzeben.game;
我想我可以尝试一下 JAXB 来处理存储和恢复设置。但即使是“最简单”的例子我也遇到了麻烦: import java.awt.Point; public class Config { public
这个问题已经有答案了: Import package.* vs import package.SpecificType [duplicate] (10 个回答) 已关闭 7 年前。 在我现在正在进行的
private static byte[] get_byte_data(BufferedImage image) { //WritableRaster raster = image.get
是否有可能获得标准 AWT Cursor以位图图像的形式(例如 BufferedImage )或任何可在 Graphics2D 上绘制的图像?例如,文本光标 new Cursor(Cursor.TEX
我的代码中有三个点,我想填充它们之间的区域,或者换句话说,在 3 个点之间绘制并填充一个三角形。 我想过简单地用 for 循环绘制线条(从 x1 到 x2),但我认为这不会有效,是否有其他更有效的方法
我正在制作一个小脚本,我使用鼠标键来节省我的工作时间。我可以正确、良好地使用鼠标键。但是,当使用 java.awt.Robot 和 java.awt.event.KeyEvent 时,鼠标键基本上被忽
我正在尝试在 scala 中使用 java awt 来制作一个简单的桌面应用程序。我已经在它上面工作了几天,没有任何问题,直到我有 2 天没有碰它,当我回来时,我得到一个 java.lang.NoCl
我在 VisualVM 和线程 View 中监视一个 JavaFX 程序,不断有 AWT-EventQueue-0 和 AWT-Shutdown 线程被创建和销毁。这是正常行为吗?这是什么原因? 最佳
我需要将 java.awt.geom.Area 或 java.awt.Shape 转换为 java.awt.Polygon。我所知道的是:isSingular = true、isPolygonal =
我正在重新使用 Java 并审查我的一些旧代码,并且我看到了很多我已经完成的地方 import javax.swing.*; import java.awt.*; 或者实际上从 swing/awt 包
晚上, 我在玩一个小的 swing 应用程序,我添加了一个按钮来响应按下。因此我需要实现 ActionListener。我已经添加了这一行: import java.awt.*; 但它告诉我找不到“A
我有这个 java 代码: Editor() { javax.swing.SwingUtilities.invokeLater(new Runnable() { pub
请帮我解决这个问题 sun.awt.image.ToolkitImage 无法转换为 java.awt.image.BufferedImage if (shape.hasImage())
嗨 Stackoverflow 的 friend 们 我最近将 Jenkins 服务器配置到 Apache Tomcat 7.0.42我制作的程序是将 jenkins.war 文件部署到 tomcat
我是一名优秀的程序员,十分优秀!