首页 \ 问答 \ java分页怎么实现

java分页怎么实现

怕面试的时候问到, 一种是:代码分页,查询出所有的记录,然后分页显示,另一种是sql分页,用limit。第一种有效率问题,第二种比较好(但也感觉有问题不知道是什么)。还有spring有分页技术,但是我没研究过,可以简单介绍下吗?怎么实现比较好
更新时间:2022-12-12 16:12

最满意答案

String a = String.valueOf(infile.read(buff));

问题应该出在这句上。

既然是文本文件,考虑用字符流试试吧。

其他回答

String a = String.valueOf(infile.read(buff)); 这行代码的问题,而且,你这个就不可取哟!

这个是源码:
public int read(byte b[]) throws IOException {
    return readBytes(b, 0, b.length);
}

private native int readBytes(byte b[], int off, int len) throws IOException;

那么infile.read(buff) 这个就是返回的读取的数据的长度,你的文件里面只有一个3,infile.read(buff)这个读取的就是一个字节的长度,所以这个方法的返回值是1,也就是你后面用到的1了,没事多捣鼓下源码吧。

当热身了~

import java.io.bufferedwriter; import java.io.filewriter; import java.util.*;

/*编写一个程序,用于从键盘读入信息,并存储到磁盘文件中去。 要求:1. 以行的方式读入姓名和学号信息,例如:张三 20071215 (姓名和学号中间用一个空格隔开) 2. 循环读入,直到用户输入“quit”或者“quit”结束 3. 程序提示要用户输入一个文件名,例如:请输入存储到的文件名: userlist.txt 4. 在整个上述过程中,要做例外处理;如果文件创建成功,则给出提示信息。*/

public class test9 { public static void main(string[] args) { t1(); } public static void t1() { filewriter out ; bufferedwriter bw; string filename = null; string message = null; scanner scanner = new scanner(system.in); system.out.print("请输入存储到的文件名:"); filename = scanner.next(); try { out = new filewriter(filename); bw = new bufferedwriter(out); system.out.print("\n文件创建成功!\n请输入姓名和学号信息:"); while( !(message = scanner.next()).equalsignorecase("quit")) { bw.write(message); bw.newline(); } bw.close(); out.close(); } catch(exception e) { system.out.println("文件创建失败!"); } }

}

import java.util.scanner; import java.io.*;

/*再编写一个程序,用于从上述存储的磁盘文件中读出信息,并显示在屏幕上。 要求: 1)文件名从键盘输入; 2)姓名和学号分开显示,例如屏幕显示如下信息: 文件 userlist.txt 中存储的姓名有: 张三 李四王五 …… 文件userlist.txt 中存储的学号有: 20061215 20061317 20061425 ….. */ public class test10 { public static void main(string[] args) { t2(); } public static void t2() { filereader read; bufferedreader in ; scanner scanner = new scanner(system.in); string filename = null; string message = null; string[] buf = new string[2]; string[] name = new string[10]; string[] number = new string[10]; int pos1 = 0; int pos2 = 0; system.out.print("请输入要读取的文件名:"); filename = scanner.next(); try { read = new filereader(filename); in = new bufferedreader(read); while((message = in.readline()) != null) { buf = message.split(" "); name[pos1++] = buf[0]; number[pos2++] = buf[1]; buf = new string[2]; } } catch(exception e) { system.out.println("该文件不存在!"); } system.out.println( "屏幕显示如下信息:"); system.out.print("文件"+filename+"中存储的姓名有:"); for(int i = 0; name[i] != null;i++) { system.out.print(name[i]+" "); } system.out.print("\n文件"+filename+"中存储的学号有:"); for(int i = 0; number[i] != null;i++) { system.out.print(number[i]+" "); } }

}

相关问答

更多
  • FileOutputStream 的一个构造方法中有两个参数,第一个为文件路径,第二个参数为boolen值. 列如: FileOutputStream fos=FileOutputStream("c:\\test.txt",true); 当第二个参数设为true时,则在文件末尾追加数据; 当第二个参数设为false时,则重写文件; 注意:第二个参数可以不写,缺省值为false
  • java读写文件[2022-05-04]

    很简单,用java的IO流的DataOutputStream 中的writeInt方法就可以,读就用DataInputStream 中的readInt方法就可以了 ======================== 是你自己不明白你的需求吧,byte类型是什么,你知道吗?如果非要用int转byte,取出再转也可以,DataInputStream也有writeByte方法,但世界没有任何一个人这么做的,int类型存进,取出就是int,你却非得多此一举
  • java文件读写[2022-08-03]

    在网上查了很多关于修改文件的方法,不得其要领。自己想了两个取巧的办法,来解决对文件的修改。一:读取一个文件file1(FileReader and BufferedReader),进行操作后写入file2(FileWriter and BufferedWriter),然后删除file1,更改file2文件名为file1(Rename()方法)。二:创建字符缓冲流(StringBuffer),读取文件内容赋给字符缓冲流,再将字符缓冲流中的内容写入到读取的文件中。例如: test.txt 这里是放在d盘的根目录 ...
  • String a = String.valueOf(infile.read(buff)); 问题应该出在这句上。 既然是文本文件,考虑用字符流试试吧。
  • 当热身了~import java.io.BufferedWriter; import java.io.FileWriter; import java.util.*;/*编写一个程序,用于从键盘读入信息,并存储到磁盘文件中去。 要求:1. 以行的方式读入姓名和学号信息,例如:张三 20071215 (姓名和学号中间用一个空格隔开) 2. 循环读入,直到用户输入“quit”或者“QUIT”结束 3. 程序提示要用户输入一个文件名,例如:请输入存储到的文件名: userlist.txt 4. 在整个上述过程中,要 ...
  • 就把这个文件名定义为一个字符串变量,String str="test.txt";在方法中传入参数时即为 FileReader fr=new FileReader("C:\\"+str); FileWriter fw=new FileWriter("D:\\"+str); 你是这个意思吧
  • java 文件读写流[2022-08-21]

    读写是两个不同的分支,通常都是分开单独使用的。 可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。 BufferedReader bre = null; try { String file = "D:/test/test.txt"; bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流 while ((str = bre.readLine())!= null) // 判断 ...
  • JAVA文件的读写[2023-09-08]

    public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file = new File(fileName); InputStream in = null; try { System.out.println("以字节为单位读取文件内容,一次读一个字节:"); // 一次读一个字节 in = new File ...
  • JAVA文件读写[2022-07-10]

    package javaTest; import java.io.BufferedReader; import java.io.FileReader; import java.io.PrintWriter; import java.util.StringTokenizer; public class Test { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(ne ...
  • 当热身了~ import java.io.BufferedWriter; import java.io.FileWriter; import java.util.*; /*编写一个程序,用于从键盘读入信息,并存储到磁盘文件中去。 要求:1. 以行的方式读入姓名和学号信息,例如:张三 20071215 (姓名和学号中间用一个空格隔开) 2. 循环读入,直到用户输入“quit”或者“QUIT”结束 3. 程序提示要用户输入一个文件名,例如:请输入存储到的文件名: userlist.txt 4. 在整个上述过程中 ...

相关文章

更多

最新问答

更多
  • 如何在Laravel 5.2中使用paginate与关系?(How to use paginate with relationships in Laravel 5.2?)
  • linux的常用命令干什么用的
  • 由于有四个新控制器,Auth刀片是否有任何变化?(Are there any changes in Auth blades due to four new controllers?)
  • 如何交换返回集中的行?(How to swap rows in a return set?)
  • 在ios 7中的UITableView部分周围绘制边界线(draw borderline around UITableView section in ios 7)
  • 使用Boost.Spirit Qi和Lex时的空白队长(Whitespace skipper when using Boost.Spirit Qi and Lex)
  • Java中的不可变类(Immutable class in Java)
  • WordPress发布查询(WordPress post query)
  • 如何在关系数据库中存储与IPv6兼容的地址(How to store IPv6-compatible address in a relational database)
  • 是否可以检查对象值的条件并返回密钥?(Is it possible to check the condition of a value of an object and JUST return the key?)
  • GEP分段错误LLVM C ++ API(GEP segmentation fault LLVM C++ API)
  • 绑定属性设置器未被调用(Bound Property Setter not getting Called)
  • linux ubuntu14.04版没有那个文件或目录
  • 如何使用JSF EL表达式在param中迭代变量(How to iterate over variable in param using JSF EL expression)
  • 是否有可能在WPF中的一个单独的进程中隔离一些控件?(Is it possible to isolate some controls in a separate process in WPF?)
  • 使用Python 2.7的MSI安装的默认安装目录是什么?(What is the default installation directory with an MSI install of Python 2.7?)
  • 寻求多次出现的表达式(Seeking for more than one occurrence of an expression)
  • ckeditor config.protectedSource不适用于editor.insertHtml上的html元素属性(ckeditor config.protectedSource dont work for html element attributes on editor.insertHtml)
  • linux只知道文件名,不知道在哪个目录,怎么找到文件所在目录
  • Actionscript:检查字符串是否包含域或子域(Actionscript: check if string contains domain or subdomain)
  • 将CouchDB与AJAX一起使用是否安全?(Is it safe to use CouchDB with AJAX?)
  • 懒惰地初始化AutoMapper(Lazily initializing AutoMapper)
  • 使用hasclass为多个div与一个按钮问题(using hasclass for multiple divs with one button Problems)
  • Windows Phone 7:检查资源是否存在(Windows Phone 7: Check If Resource Exists)
  • 无法在新线程中从FREContext调用getActivity()?(Can't call getActivity() from FREContext in a new thread?)
  • 在Alpine上升级到postgres96(/ usr / bin / pg_dump:没有这样的文件或目录)(Upgrade to postgres96 on Alpine (/usr/bin/pg_dump: No such file or directory))
  • 如何按部门显示报告(How to display a report by Department wise)
  • Facebook墙贴在需要访问令牌密钥后无法正常工作(Facebook wall post not working after access token key required)
  • Javascript - 如何在不擦除输入的情况下更改标签的innerText(Javascript - how to change innerText of label while not wiping out the input)
  • WooCommerce / WordPress - 不显示具有特定标题的产品(WooCommerce/WordPress - Products with specific titles are not displayed)