1、编写一个程序,将d:\java 目录下的所有.java 文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad。

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FilenameFilter;
import java.io.IOException; public class Jad2Java { public static void main(String[] args) throws Exception {
//1.定位到文件的路径下
File javaFile=new File("D:\\java");
//1.1判断文件夹是否存在,不存在就跑出异常
if (!javaFile.exists()||!javaFile.isDirectory()) {
throw new Exception("java文件夹不存在");
}
//2.找出所有的以“.Java”为后缀名的文件
File[] javaFiles= javaFile.listFiles(new FilenameFilter() { @Override
public boolean accept(File dir, String name) {
//System.out.println(name);
return name.endsWith(".java")?true:false;
}
}); //3、创建新的文件夹
File jadFile=new File("D://jad");
//3.1如果文件不存在的话,那么就创建一个
if (!jadFile.exists()) {
jadFile.mkdir();
}
//4、将所有.Java的文件复制到Jad文件夹下面
for (File file : javaFiles) {
FileInputStream fis=new FileInputStream(file);
String newJadName=file.getName().replaceAll("\\.java$", ".jad");
FileOutputStream fos=new FileOutputStream(new File(jadFile,newJadName));
copy(fis,fos);
fis.close();
fos.close();
} }
/**
* 将输入流中的内容输出
* @param fis 文件输入流
* @param fos 文件输出流
*/
private static void copy(FileInputStream fis, FileOutputStream fos) {
byte[] buff=new byte[1000];
int lenth=0;
try {
while (-1!=(lenth=fis.read(buff))) {
fos.write(buff,0,lenth);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }

 

2、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException; public class MyReadFromFile {
public void readFromFile() throws IOException {
// 完成文件管理类的初始化 FileManager f1 = new FileManager("data1.txt", new char[] { '\n' }); FileManager f2 = new FileManager("data2.txt", new char[] { '\n', ' ' });
// 将文件1和文件2循环写入
String file1Str = f1.NextWord();
String file2Str = f2.NextWord();
FileWriter fw = new FileWriter("c.txt");
while (file1Str != null) {
fw.write(file1Str);
if (!file2Str.isEmpty()) {
fw.write(file2Str);
}
file2Str = f2.NextWord();
file1Str = f1.NextWord();
} while (!file2Str.isEmpty()) {
fw.write(file2Str);
file2Str = f2.NextWord();
}
// 可能遇到的情况,文件1写完了,但是文件2还没有写完
fw.close(); } public static void main(String[] args) { } class FileManager { private int position = 0;
private String[] Words; public FileManager(String FileName, char[] Seperate)
throws FileNotFoundException {
File mFile = new File(FileName);
FileReader fileReader = new FileReader(mFile);
String regex = null;
if (Seperate.length > 1) {
regex = "" + Seperate[0] + "|" + Seperate[1];
} else {
regex = "" + Seperate[0];
}
char[] Data = new char[(int) mFile.length()];
try {
int Lenth = fileReader.read(Data);
String longWords = new String(Data, 0, Lenth);
Words = longWords.split(regex);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } public String NextWord() {
if (position == Words.length) {
return null;
}
return Words[position++]; }
}
}

Java面试题(1)的更多相关文章

  1. java面试题及答案(转载)

    JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...

  2. 115个Java面试题和答案——终极列表(下)

    第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,本章主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用(RMI),Servle ...

  3. Java面试题(全)

    JAVA部分 什么是反射机制?反射机制应用(Struts中反射机制的应用) 答:运行状态中,对于任意一个类,都可以知道它的所有属性和方法,对于任意一个对象都可以调用它的任意一个方法,这种动态获取信息以 ...

  4. Java面试题大全(四)

    JAVA代码查错 1. abstract class Name { private String name; public abstract boolean isStupidName(String n ...

  5. 大公司的Java面试题集

    找工作要面试,有面试就有对付面试的办法.以下一些题目来自我和我朋友痛苦的面试经历,提这些问题的公司包括IBM, E*Trade, Siebel, Motorola, SUN, 以及其它大小公司. 面试 ...

  6. 收集了50道基础的java面试题

    下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最 ...

  7. Java笔试题解答和部分面试题

    面试类  银行类的问题 问题一:在多线程环境中使用HashMap会有什么问题?在什么情况下使用get()方法会产生无限循环? HashMap本身没有什么问题,有没有问题取决于你是如何使用它的.比如,你 ...

  8. 转:Java面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101

    Java面试题集(51-70) Java程序员面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101 摘要:这一部分主要 ...

  9. JAVA面试题集之基础知识

                           JAVA面试题集之基础知识 基础知识:  1.C 或Java中的异常处理机制的简单原理和应用. 当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就 ...

  10. [原]Java面试题-将字符串中数字提取出来排序后输出

    [Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...

随机推荐

  1. php关闭错误提示

    今天调试phalcon的一个接口时候碰到如下提示: Deprecated: mongogo::mongogo(): The Mongo class is deprecated, please use ...

  2. 京东B2B的4种供销模式

    B2B的4种供销模式,以京东商城为例: FBP     京东给商家一个独立操作的后台, 商家五地入库(北京,上海,广州,成都,武汉),从仓储 到配送 到客服都是京东来操作, 京东本身自营的产品所有能享 ...

  3. [vivado系列]设置Xilinx Documention Navigator

    版本:2015.1 ------------------------------------------ 这是一个很便利FPGA工程师的文档整理收纳神器. 针对个人使用上的习惯,进行简单的2项设置. ...

  4. js判断是否安装pdf播放器

    function isPDFPluginInstall() { if (!isIE()) { //ie 浏览器 和 非ie浏览器支持 // not ie if (navigator.plugins & ...

  5. Nop源码分析一

    从Global.asax文件开始逐层分析Nop的架构. Application_Start()方法作为mvc启动的第一个方法. 1,首先初始化一个引擎上下文,如下面的代码: EngineContext ...

  6. 【Tyvj1601】魔兽争霸(主席树,树套树)

    题意:要求在N个数的序列中支持以下操作: 1:将第X个元素加上Y 2:询问当前K大值 n<=30000,m<=50000 思路:树状数组套主席树 Tyvj又炸了,还不知道对不对 ..12] ...

  7. Google上的Cookie Matching

    Cookie Matching This guide explains how the Cookie Matching Service enables you to make more effecti ...

  8. Sum All Odd Fibonacci Numbers

    function sumFibs(num) { //return num; var arr = [1,1]; var add = 2; while(true){ var item = arr[0] + ...

  9. [转] linux虚拟带库操作笔记

    原文来自:“王旺的书房” ---- http://blog.itpub.net/271063/viewspace-1059840/ 分类: Linux 查看设备[root@node1 ~]# lssc ...

  10. Depth Bias 以及 Ogre材质中的depth_bias

    深度偏移用来解决共面情况下出现闪烁的问题 通过给多边形增加一个z方向深度偏移(depth bias,z_bias),使3D空间的共面多边形看起来好像并不共面,以便它们能够被正确渲染.这种技术是很有用的 ...