Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想分离字符和数字,并将这些值写入文本文件_Java_Oracle_Jsp - Fatal编程技术网

Java 我想分离字符和数字,并将这些值写入文本文件

Java 我想分离字符和数字,并将这些值写入文本文件,java,oracle,jsp,Java,Oracle,Jsp,我使用一个查询从Db中获取所有值。我在Db中有一个8列,包含混合字符和数字。当我使用下面的技术时,我需要将字符和数字分开,因为循环并没有重复7次,它只保存了一次值,并且我只得到一个值,我在附上下面的图片来检查数据库中存在哪些值 在jsp页面中,我使用以下逻辑从Db中获取和分离值 String str = "SELECT PATIENTINSURANCE.VISITSAUTHORIZED,PATIENT.PATIENTID FROM PATIENTINSURANCE INNER JOIN PA

我使用一个查询从Db中获取所有值。我在Db中有一个8列,包含混合字符和数字。当我使用下面的技术时,我需要将字符和数字分开,因为循环并没有重复7次,它只保存了一次值,并且我只得到一个值,我在附上下面的图片来检查数据库中存在哪些值

在jsp页面中,我使用以下逻辑从Db中获取和分离值

String str = "SELECT PATIENTINSURANCE.VISITSAUTHORIZED,PATIENT.PATIENTID FROM PATIENTINSURANCE  INNER JOIN PATIENT ON PATIENTINSURANCE.PATIENTID=PATIENT.PATIENTID AND VISITSAUTHORIZED IS NOT NULL AND PATIENT.COMPANYID='"
                + companyId + "'"; 
        DBAccess dbAccess = new DBAccess();
        ArrayList<String> entries = new ArrayList<String>();
        String a = "";
        String number = "";
        try {
            List encList = dbAccess.selectAsList(str, 2);
            if (encList.size() > 0) {
                for (int i = 0; i < encList.size(); i++) {
                    System.out.println("the value of i  is "+i);
                    List temp = (ArrayList) encList.get(i);
                    String visits = temp.get(0) != null ? ((String) temp
                            .get(0)) : "";
                    String patientNo = temp.get(1) != null ? ((String) temp
                            .get(1)) : "";
                    String letter = "";
                    System.out.println("the visits is "+visits);

                    int x = visits.length();
                    System.out.println("the size is "+x);
                        for (int j = 1; j <= x; j++) {
                        char c = visits.charAt(j);
                        if (Character.isDigit(c)) {
                            number = number + c;
                            %><strong><%=number%></strong><%
                            File file=new File("C:\\sample1.txt");
                            if(!file.exists()){
                                file.createNewFile();
                            }
                            FileWriter filewriter =new FileWriter(file.getAbsoluteFile());
                            BufferedWriter bufferedwirter =new BufferedWriter(filewriter);
                            bufferedwirter.write(number);
                        bufferedwirter.close();
                        System.out.println("Done succesfully");
                        }
                         else {
                            letter = letter + c; }
                        System.out.println("Visits are "+number);
                    } }
            } else {
                System.out.println("values of list is zero");
            }
        } catch (Exception e3) {
            System.out.println();
        }}%>
String str=“从PATIENTINSURANCE内部选择PATIENTINSURANCE.VISITSAUTHORIZED,PATIENT.PATIENTID=PATIENT.PATIENTID和VISITSAUTHORIZED不为NULL,PATIENT.COMPANYID=””
+companyId+“'”;
DBAccess DBAccess=新的DBAccess();
ArrayList条目=新的ArrayList();
字符串a=“”;
字符串编号=”;
试一试{
List encList=dbAccess.selectAsList(str,2);
如果(encList.size()>0){
对于(int i=0;i
我得到的输出只有第一个值,即: wt45 我需要获得以下输出: wt45wt45wt4588tyde66wt45wt45wt45 在文本文件中,我需要像这样打印454588664545 但我得到的输出是
45

此代码的一个问题是,您在for循环中使用FileWriter打开文件。请将以下代码移出for循环:

File file=new File("C:\\sample1.txt");
if(!file.exists()){
file.createNewFile();
}
FileWriter filewriter =new FileWriter(file.getAbsoluteFile());
BufferedWriter bufferedwirter =new BufferedWriter(filewriter);
number = " ";

并在for循环后关闭文件。

DBAccess类中有什么?您是否能够在jsp中显示所需的值:@Sanjeev它包含'resultset=stmt.executeQuery(查询)与数据库连接逻辑相关的代码,我需要显示,也需要将这些值写入文本文件,然后是创建列表的代码。对吗?我也想看到这些代码。它当前是否在jsp上显示所需的结果?我不会将列表添加到任何字段,它只是声明本身。