String name= File.getParentName(“file.txt”);
String name= (new File(“file.txt”)).getParent();
String name = (new File(“file.txt”)).getParentName();
String name= (new File(“file.txt”)).getParentFile();
Directory dir=(new File (“file.txt”)).getParentDir(); String name= dir.getName();
第1题:
A、InputStream in=new FileReader(“file.txt”)
B、InputStream in=new FileInputStream(“file.txt”)
C、InputStream in=new InputStreamFileReader (“file.txt”,“read”)
D、FileInputStream in=new FileReader(new File(“file.txt”))
第2题:
A.OutputStreamout=newFileOutputStream(“file.txt”);
B.OutputStreamout=newFileOutputStream(“file.txt”,“append”);
C.FileOutputStreamout=newFileOutputStream(“file.txt”,true);
D.FileOutputStreamout=newFileOutputStream(newfile(“file.txt”));
E.OutputStreamout=newFileOutputStream(newFile(“file.txt”)true);
第3题:
【C++代码】
#include <list>
#include <iostream>
#include <string>
using namespace std;
class AbstractFile{
protected:
string name; //文件或目录名称
public:
void printName(){cout<<name;} //打印文件或目录名称
virtual void addChild(AbstractFile *file)=0; //给一个目录增加子目录或文件}
virtual void removeChild(AbstractFile *file)=0; //删除一个目录的子目录或文件
virtual list<AbstractFile*> *getChildren()=0; //获得一个目录的子目录或文件
};
class File:public AbstractFile{
public:
File(string name) {(1) = name;}
void addChild(AbstractFile *file){return;}
void removeChild(AbstractFile *file){return;}
(2) getChildren(){return (3) ;}
};
class Folder :public AbstractFile{
private:
list <AbstractFile*> childList: //存储子目录或文件
public:
Folder(string name){ (4) name;}
void addChild(AbstractFile*file){childList.push_back(file);}
void removeChild(AbstractFile*file){childList.remove(file);}
list<AbstractFile*>*getChildren(){return (5) ;}
};
void main(){
//构造一个树形的文件/目录结构
AbstractFile *rootFolder=new Folder("c:\\ ");
AbstractFile*compositeFolder=new Folder("composite");
AbstractFile *windowsFolder=new Folder("windows");
AbstractFile*file=new File("TestCompositejava");
rootFolder->addChild(compositeFolder);
rootFolder->addChild(windowsFolder);
compositeFolder->addChild(file);
}
第4题:
对于如下程序: #include
第5题:
A.Stringname=File.getParentName(“file.txt”);
B.Stringname=(newFile(“file.txt”)).getParent();
C.Stringname=(newFile(“file.txt”)).getParentName();
D.Stringname=(newFile(“file.txt”)).getParentFile();
E.Directorydir=(newFile(“file.txt”)).getParentDir();Stringname=dir.getName();
第6题:
要想以读方式打开文件“D:\File.txt”,以下不能实现目的的语句是()。
A、ifstreaminf("D:\\FilEtxt",ios::in);
B、ifstreaminf("D:\\File.txt");
C、ofstreaminf("D:\\File.txt",ios::out);
D、fstreaminf("D:\\File.txt",ios::in|ios::out);
第7题:
A.OutputStreamout=newFileOutputStream(“file.txt”); Out.writeBytes(“/n”);
B.OutputStreamos=newFileOutputStream(“file.txt”,true); DataOutputStreamout=newDataOutputStream(os);out.writeBytes(“/n”);
C.OutputStreamos=newFileOutputStream(“file.txt”); DataOutputStreamout=newDataOutputStream(os);out.writeBytes(“/n”);
D.OutputStreamos=newOutputStream(“file.txt”,true); DataOutputStreamout=newDataOutputStream(os);out.writeBytes(“/n”);
第8题:
【Java代码】
import Java.util.ArrayList;
import java.util.List;
(1) class AbstractFile{
protected String name;
public void printName(){System.out.println(name);}
public abstract boolean addChild(AbstractFile file);
public abstract boolean removeChild(AbstractF ile file);
public abstract List<AbstractFile> getChildren();
}
class File extends AbstractFile{
public File(String name){this.name=name;}
public boolean addChild(AbstractFile file){return false;}
public boolean removeChild(AbstractFile file){return false;}
public List<AbstractFile> getChildren(){return (2) ;}
}
class Folder extends AbstractFile{
private List <AbslractFile> childList;
public Folder(String name){
this.name=name;
this.childList=new ArrayList<AbstractFile>();
}
public boolean addChild(AbstractFile file) { return childList.add(file);}
public boolean removeChild(AbstractFile file){return childList.remove(file);}
public (3) <AbstractFile> getChildren(){return (4) ;}
}
public class Client{
public static void main(String[] args){
//构造一个树形的文件/目录结构
AbstractFile rootFolder= new Folder("c:\\ ");
AbstractFile compositeFolder=new Folder("composite");
AbstractFile windowsFolder=new Folder("windows");
AbstractFile file=new File("TestComposite.java");
rootFolder.addChild(compositeFolder) ;
rootFolder.addChild(windowsFolder);
compositeFolder.addChild(file) ;
//打印目录文件树
printTree(rootFolder);
}
private static void printTree(AbslractFile ifile){
ifile.printName();
List <AbslractFile> children=ifile.getChildreno:
if(children==null) return;
for (AbstractFile file:children) {
(5) ;
}
}
}
该程序运行后输出结果为:
c:\
composite
TestComposite.java
Windows
第9题:
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示:
【Java代码】
import JavA.util.ArrayList;
import JavA.util.List;(1)class AbstractFile{
protected String name;
public void printName(){System.out.println(name);}
public abstract boolean addChild(AbstractFile file);
public abstract boolean removeChild(AbstractFile file);
public abstract ListgetChildren {};
}
class File extends AbstractFile{
public File(String name)(this.name=name;}
public boolean addChild(AbstractFile file){return false;}
public boolean removeChild(AbstractFile file){return false;}
public ListgetChildren(){return (2) ;)
}
clasS Folder extends AbstractFile{
private ListchildList;
public Folder(String name){
thiS.name=name;
this.childList=new ArrayList{};
}
public boolean addChild(AbstractFile file){return childList.add(file);}
public boolean removeChild(AbstractFile file){return childList.remove(file);
public (3)getChildren(){return (4) ;)
}
public class Client{
public static void main(String[]args){
//构造一个树形的文件/目录结构
AbstractFile rootFolder=new Folder(“C:\”’);
AbstractFile compositeFolder=new Folder(”composite”);
AbstractFile windowsFolder=new Folder(”windows”);
AbstractFile file=new File(”TestComposite.java”);
rootFOlder.addChild (compositeFolder);
rootFolder.addChiid(windowsFolder);
compositeFolder.addChild(file);
//打印目录文件树
printTree(rootFolder);
}
private static void printTree(AbstractFile ifile){
ifile.PrIntName();
Listchildren:ifile.getChildren ();
if(chiidren==null)return;
for(AbstractFile file:children){(5) ;
}
}
}
该程序运行后输出结果为:
C:\
composite
TestComposite.java
Windows
第10题:
创建一个向文件“file.txt”追加内容的输出流对象的语句有()。