问题:在使用文件字节流的时候,先使用 int read() 方法进行读取,再使用 int read(char[] c) 方法进行读取,但输出的时候只有使用 int read() 方法读取的结果,没有使用 int read(char[] c) 读取的结果。只单独使用 int read(char[] c) 方法 或 int read() 方法的时候输出结果却没有问题
代码(问题在注释为操作那里):
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class TestFileInoutStream { public static void main(String[] args) { //创建源 File file = new File("/media/nexfia/0D86051E0D86051E/学习/百战/eclipse-workspace/IO/IO.txt"); //选择流 FileInputStream fis = null; try { fis = new FileInputStream(file); /** * 操作 * 使用 int read() 方法进行读取 * 使用 int read(char[] a) 进行读取 */ //使用 int read() 方法进行读取 int temp; while((temp=fis.read())!=-1) { System.out.println((char)temp); } //使用 int read(char[] a) 进行读取 byte[] c = new byte[3]; int len = -1;//接收长度 while((len=fis.read(c))!=-1) { String str = new String(c,0,len); System.out.println(str); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { try { //释放流 fis.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
IO.txt 内容
I am Nexfia.
输出结果
I a m N e x f i a .
public class Welcome{
public static void main(String[] args){
System.out.println("Hello World 叶磊");
}
都是对的,为什么报这个错
老师您好,我看了坦克大战大部分视频,很惭愧,看了后面忘了前面。有一个非技术性的问题请教,就是这一章节我们需要掌握到什么程度?照着讲师的代码敲是没问题的,里面的逻辑勉强可以理解,但其实还有许多懵懂的地方,学起来挺虚的。
老师 问下系统在哪里下载呢?能否给个链接 谢谢
public class TestConstants{ public static void main(String[] args){ final double PI=314e-2; int r=3; double circle= 2*PI*r; //周长 double area=PI*r*r; //面积 System.out.println(PI); System.out.println(circle); System.out.println(area); }
运行结果
我定义的PI=3.14 r=3
运行的面积area怎么有这么多小数
if num%2==0
什么意思
对照资料中的源码反复检查了多次还是还没发现问题,尤其是getServlet方法中的代码更是一个个去看,还是没看出哪不一样,麻烦老师帮我看看
源码.zip
老师,为什么这个页面跳转不成功,但是从上面地址栏那里可以输入访问成功?
pl/sql dev 登陆后为什么登陆的用户下的表名还有用户名前缀?在pl/sql查询数据时也需要在表名前加上用户名
看不懂这是哪里错了
我也是出现了以下错误,并且主机名和服务名都是填的后面两个图片
为什么报错
w为啥这里不用加this.
如下图:我的XML文件有两个子元素:servlet;为第二个loginTwo就不能映射出对应的值(cn.sxt.servlet.login2Servlet)呢? 总是报异常,改成映射login的值就不报错,这个为什么?
源码如下:
package cn.sxt.server; import java.util.List; import java.util.Map; import cn.sxt.servlet.Servlet; /** * 本类的作用: * 1.初始化程序运行的数据 * 2.根据不同的url创建所请求的servlet对象 * @author User * */ public class WebApp { //应用程序类 private static ServletContext context; //使用静态代码块来初始化数据 static { //创建ServletContext对象 context=new ServletContext(); //获取对应关系Map(servlet、mapping)集合 Map<String,String> servlet=context.getServlet(); Map<String,String> mapping=context.getMapping(); //创建解析XML文件的对象 WebDom4j wd=new WebDom4j(); wd.parse(wd.getDocument());//解析XML文件 //获取解析XML后的List集合 List<Entity> entityList=wd.getEntityList(); List<Mapping> mappingList=wd.getMappingList(); //将List集合中数据存储到Map集合中,遍历集合 for(Entity temp:entityList) { servlet.put(temp.getName(), temp.getCla());//servlet-name作为key,servlet-class作为value } for(Mapping temp:mappingList) { //遍历mappingList for(String s:temp.getUrlPattern()) { //遍历getUrlPattern()集合 mapping.put(s, temp.getName()); //添加key-value对 } } System.out.println(mapping); } /** * 根据url创建不同的Servlet对象 * @param url * @return */ //根据url来创建servlet对象 public static Servlet getServlet(String url) { //处理url不正确的情况 if(url==null||url.trim().equals("")) { return null; } //处理url正常的情况 //根据url的key获取value String servletName=context.getMapping().get(url); //的得到String类型的servlet-name String servletClass=context.getServlet().get(servletName);//根据servlet-name得到 想对应的value Servlet servlet=null; try { //使用反射创建servlet对象 Class<?> clazz=Class.forName(servletClass); //调用无参构造函数创建对象 servlet=(Servlet) clazz.newInstance(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InstantiationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } return servlet; } //测试main方法 public static void main(String[] args) { System.out.println(getServlet("/login2")); } }
请问一下,配置环境变量到底有啥用?能全面详细解释一下么?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637