我意识到这已经被问了很多。我确实看过。我花了几个小时环顾四周,并试图解决这个问题。我应该编写一个程序,该程序在数据库中存储相当于约会列表的内容,并包含描述,日期,开始时间和结束时间。它必须接受用户的输入才能添加或取消约会,据我所知,这意味着我需要将字符串转换为日期。
这些是我的导入:import java.io.File; 导入java.io.IOException; 导入java.sql.Connection;
导入java.sql.Date; 导入java.sql.PreparedStatement; 导入java.sql.ResultSet;
导入java.sql.ResultSetMetaData; 导入java.sql.SQLException; 导入java.sql.Time;
导入java.text.DateFormat; 导入java.text.ParseException;
导入java.text.SimpleDateFormat; 导入java.util.ArrayList; 导入java.util.Scanner;
如您所见,那里没有java.util.Date。这是我遇到错误的地方:
private static java.sql.Date getDay()
{
Scanner in = new Scanner(System.in);
String input;
Date apptDay = null;
DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
java.sql.Date sqlDate;
System.out.println("\nPlease enter the date of the appointment, format: yyyy/mm/dd");
while(apptDay == null)
{
try
{
input = in.next();
apptDay = (Date) df.parse(input);
}
catch(ParseException e)
{
System.out.println("Please enter a valid date! Format is yyyy/mm/dd");
}
}
sqlDate = new Date(apptDay.getTime());
return sqlDate;
}
我已经在其中添加了java.sql.Dates并对其进行了大量尝试以使其正常工作,但它仍然给了我这个:
Exception in thread "main" java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date at Calendar.getDay(Calendar.java:47)
对于我做错了什么或如何进行这项工作的任何想法,将不胜感激。
编辑:我认为如果我添加调用此代码的代码可能会有所帮助,所以也许它将更清楚我如何使用它,所以这里是addAppointment()方法,因此您可以看到getDay(
)正在被调用以及它的去向。
public static void addAppointment() throws SQLException
{
//get the info
String desc = getDesc();
java.sql.Date apptDay = getDay();
Time[] times = getTime();
Time startTime = times[0];
Time endTime = times[1];
int key;
Connection conn = SimpleDataSource.getConnection(); //connect to the database
try
{
PreparedStatement max = conn.prepareStatement("SELECT MAX(ID) FROM Calendar");
ResultSet result = max.executeQuery();
key = result.getInt("ID") + 1;
PreparedStatement stat = conn.prepareStatement(
"INSERT INTO Calendar " +
"VALUES (?, ?, ?, ?, ?)");
stat.setInt(1, key);
stat.setString(2, desc);
stat.setDate(3, apptDay);
stat.setTime(4, startTime);
stat.setTime(5, endTime);
stat.execute();
System.out.println("\nAppointment added!\n");
}
finally
{
conn.close(); //finished with the database
}
}
我有以下JSON字符串: 我只想要和。我试过这样的方法: 但我得到了以下错误: 我只使用过几次JSON。有人能帮我吗? 对我来说最好的例子是这样的,我在另一个例子中做过: 可能吗? 现在我已经做到了: 我试着这样做: 然后: 但现在当我做一个Prtinout时,我会得到和以前一样的错误:
我试图获取任意长度的字符串[],并将其打印成字符串,最好使用字段分隔符。现在我有: 但是由于某种原因,它只是返回“第二个”值。我如何使它正确连接这些值? 另外,我可以使用来简化代码吗?谢谢
问题内容: 我如何将字符串转换为? 我看过类似的例子: 但是我的字符串就像: 问题答案: 使用Joda Time时,应使用: 如果使用Java 8或更高版本,请参考hertzi的答案 java.time 从Java 1.8开始,您可以使用java.time类而无需额外的库来实现此目的。请参阅教程。
我遇到了这样一个java字符串,其中以下内容是错误的: 我想这是因为字符串构造函数默认将主体字节[]的编码视为UTF-8,我不是100%确定。我如何能够将此字符串存储在字节[]中,并能够稍后将其转换回来?我想我需要能够确定字节[]的编码方式。我该怎么做呢? 一些上下文:我需要字节[],以便压缩数据,将其存储在数据库中,然后解压缩并将未压缩的字节[]转换回原始字符串。这个字符串最初来自某个下载了网页
问题内容: 我是Java新手,所以我几乎不需要帮助 我有 我想向此数组(脚本)添加新的字符串(string1,string2)作为示例 我想在以后的阶段中不添加新字符串 我该怎么办? 问题答案: 您无法在Java中调整数组的大小。 声明数组的大小后,它将保持固定。 相反,您可以使用具有动态大小的对象,这意味着您无需担心其大小。如果数组列表的大小不足以容纳新值,则它将自动调整大小。
问题内容: 我正在尝试用Java创建一个简单的String to SHA1转换器,这就是我所拥有的… 当我通过它时,我[.知道它可能是像UTF-8这样的简单编码修复程序,但是有人可以告诉我我应该怎么做才能得到我想要的东西吗?还是我这样做完全错误? 问题答案: 这是我将字符串转换为sha1的解决方案。它在我的Android应用程序中运行良好: