jdbc-将student.txt文件写入sqlserver数据库,学号写不进去,后面就错位了,求大神

问题描述

将student.txt文件写入sqlserver数据库,学号写不进去,后面就错位了,求大神
package sqlConn;
import java.io.*;
import java.sql.*;
import java.util.*;
public class Test {
public static void main(String[] args) throws Exception{
List students=new LinkedList();
FileReader fin=new FileReader(""res/students.txt"");
BufferedReader in=new BufferedReader(fin);
String line=in.readLine();
while(line != null)
{
line = line.trim(); //去除字符串中前后空格
if( line.length() > 0 ) //检查是否是空行
{
Student student = new Student();
student.parseStudent(line);
students.add(student);
}
line = in.readLine();
}
in.close();
fin.close();
String driverName=""com.microsoft.sqlserver.jdbc.SQLServerDriver"";
String dbURL=""jdbc:sqlserver://localhost:1433;DatabaseName=student"";
String userName=""sa""; //默认用户名
String userPwd=""12345""; //密码
Class.forName(driverName).newInstance();
Connection dbConn=DriverManager.getConnection(dbURLuserNameuserPwd);
//System.out.println(""连接成功!""); //如果连接成功,控制台输出“连接成功!”
Statement stat = dbConn.createStatement();
Iterator iter = students.iterator();
while(iter.hasNext())
{
Student stu = (Student)(iter.next());
String command = ""INSERT INTO stu VALUES('"";
command += stu.getID()+""''"";
command += stu.getName()+""''"";
command += stu.getDepartment()+""')"";
System.out.println(command);
stat.executeUpdate(command);
}
}
}
class Student implements Serializable
{
private String sno;
private String sn;
private String dept;
public void parseStudent(String str)
{
int tokenCount;
StringTokenizer t = new StringTokenizer(str);
tokenCount = t.countTokens();
t.nextToken(); //序号
sno = t.nextToken(); //学号
sn = t.nextToken(); //姓名
if( tokenCount > 7 )
dept = t.nextToken();
}
public String toString()
{
String s = sno + "" "" + sn;
for(int l = s.length();l<21; l++) s +="" ""; //对齐
return s + dept;
}
public String getID(){return sno;}
public String getName(){return sn;}
public String getDepartment(){return dept;}
}

解决方案

你的代码里面t.nextToken(); //序号这个去掉。students.txt里面只有三列,学号,姓名和课程,但是你在解析的时候却解析成4列,所以错了。

解决方案二:
students.txt 中是没有序号的,那是编辑器自动显示在行头的(明显颜色都不一样),下面这句是多余的

 t.nextToken(); //序号

解决方案三:

时间: 2025-01-30 02:58:05

jdbc-将student.txt文件写入sqlserver数据库,学号写不进去,后面就错位了,求大神的相关文章

sqlserver-尝试写了一个 JDBC 操作 SQLServer 的工具类,但是好像有问题,求大神帮忙指正

问题描述 尝试写了一个 JDBC 操作 SQLServer 的工具类,但是好像有问题,求大神帮忙指正 java新人,尝试写了一个 JDBC 操作 SQLServer 的工具类,但是好像有问题,调用 insert 指令没问题,而 select 指令出现如下报错: com.microsoft.sqlserver.jdbc.SQLServerException: ')' 附近有语法错误. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFr

log explorer-为恢复sql server2005数据库数据,安装Log Explorer时报错,求大神帮忙看看。

问题描述 为恢复sql server2005数据库数据,安装Log Explorer时报错,求大神帮忙看看. 解决方案 1.Lumigent Log Explorer for SQL Server v4.0.2 特别版下载地址http://down.chinaz.com/soft/7887.htm Log Explorer for SQL Server 4.2 注册码 wv5rc-uxvpz-e33-nr4694qs2 2.Log Explorer for SQL Server v4.0.2 安

mysql做数据库cpu占用率竟达300多,在线求大神解答

问题描述 mysql做数据库cpu占用率竟达300多,在线求大神解答 话不多说,直接上图 解决方案 http://blog.csdn.net/yhawaii/article/details/7246008 用一些工具先看下问题在哪里 解决方案二: 为何这么叼 开启了隐藏功能么 解决方案三: 没人知道咋回事么,很急的啊.快来大神帮我解答吧

php-用PHP创建数据库表总是失败,代码如下,跪求大神。。

问题描述 用PHP创建数据库表总是失败,代码如下,跪求大神.. <?php$con = mysql_connect(""localhost""root""xxh2011010015"");if (!$con) { die('Could not connect: ' . mysql_error()); } // Create table in my_db databasemysql_select_db("&quo

xls-XLS文件误删后恢复硬盘找回了,可是提示文件损坏,修复后却出现另一种问题,求大神解决QWQ

问题描述 XLS文件误删后恢复硬盘找回了,可是提示文件损坏,修复后却出现另一种问题,求大神解决QWQ 修复后,大量的lost label,请问这种情况怎么修复啊各位大神,这个表格很重要的,当时竟然忘了备份,跪求解决啊QWQ 解决方案 有两个可能,一个是存放文件的实际的簇被别的数据覆盖了,如果是这样,没辙. 还可能是你的恢复软件不行,它没有真正定位文件头,那么这个需要手工去寻找了.如果文件很重要,建议你找数据恢复的公司帮你.

数据库同步-关于网站会员管理系统的做法,求大神指教

问题描述 关于网站会员管理系统的做法,求大神指教 目前正在做一个网站,然后同时想做一个会员管理的系统,现在想到两种做法: 1.会员管理系统跟网站通用一个数据库,这种做只用做一套界面就差不多解决问题了 2.重新建一个数据库,把网站上有关会员的信息定期向该数据库同步,会员管理的查询全部在该数据库中建立 综合各方面因素,不知道哪一种比较合适一点,实际一点 本人菜鸟,大神们帮指点一下 解决方案 可以分开库,但都在一个服务器上,这样你用不着同步啊,当然如果你能处理好同步,可以分服务器,这样可以多套系统使用

Java源代码打成可执行jar包后连接不上sql2000数据库。在eclipse里能连上。求大神帮助,感谢

问题描述 因目前在手机中发的贴,无法贴图.不知各位大神是否遇到过这情况.. 解决方案 解决方案二:没有错误信息,很难判断什么问题解决方案三:你的包中有没有将sqlserver的驱动包一起打包进去,如果没有一起打包进去的话,那你运行的时候需要带上-cp参数,并将驱动jar带上.解决方案四:打的jar包中有一个META-INFMANIFEST.MF文件,其中有一个class-path属性,这个属性后面跟上要依赖的jar包的路径和名称就可以了,如果跟当前执行jar在同一个目录下面,那么class-pa

怎么把文本文件写入二维数组并在组合框中输出,求大神帮忙啊帮忙

问题描述 [align=center]要求是:学院用组合框控件显示,数据来自txt资源文件.专业也用组合框控件显示,数据来自txt资源文件,并且可以根据学院名称显示对应的专业.这个是文本文件的内容:外国语学院英语专业日语专业,法语专业化工学院染整工程化工工程工商管理学院MBA工商管理专业会计专业[/align]我现在想把文本文件写入二维数组然后放到组合框里,弄了好久都弄不出,求大侠帮忙帮忙 解决方案 解决方案二:用二维数组恐怕不合适解决方案三:用一维数组保存学院名,用交错数组保存各学院的专业名,

python文件语句解析-Python的这段程序怎么读啊?求大神,我刚学,一头雾水

问题描述 Python的这段程序怎么读啊?求大神,我刚学,一头雾水 max = 10 sum = 0 extra = 0 for num in range(1,max) if num % 2 and not num %3: sum +=num else: extra +=1 print sum. #sum会是多少,输出的extra是多少? 特别是这句if num % 2 and not num %3:,是可以理解成不能同时被2和3整除的数吗? 虽然问题很low,原谅一个菜鸟吧 解决方案 if n