public class Title4 {
public static void main(String[] args){
ArrayList<String> list = bufferedReader();
// 确定每个院校 有多少个学生
String currentSch = "";
for(int i=0;i<list.size();i++){
//获取其中一个字串
String temp = list.get(i);
//判断是否是院校
String r = "0123456789";
// System.out.println("提取的是:"+temp.charAt(0));
if(r.indexOf(temp.charAt(0))==-1){ //是院校
// System.out.println("学校");
currentSch = f(temp);
}else{
String str = currentSch+""+student(temp);
bufferedWriter(str);
// System.out.println(currentSch+""+student(temp));
}
}
}
//写入文件
public static void bufferedWriter(String str){
File f = new File("e:\\out.txt");
try{
if(!f.exists()){
f.createNewFile();
}
BufferedWriter bw = new BufferedWriter(new FileWriter(f,true)); //文件写入不覆盖
bw.write(str);
bw.write("\n");
bw.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
//学生字符串的组合
public static String student(String str){
String[] arr = str.split(":");
//名字 组别 分数 号码
String[] temp = {arr[3],arr[1],arr[0],arr[2]};
while(temp[0].getBytes().length<12){
temp[0]+= " ";
}
while(temp[1].getBytes().length<10){
temp[1]+= " ";
}
while(temp[2].getBytes().length<4){
temp[2]+= " ";
}
while(temp[3].getBytes().length<16){
temp[3]+= " ";
}
String s = "";
for(int i=0;i<temp.length;i++){
s+=temp[i];
}
return s;
}
//将 拼音 转换为地名
public static String f(String str){
String[] arr = str.split(":");
if(arr[3].equals("xijing")){
arr[3] = "西京";
}else if(arr[3].equals("lushan")){
arr[3] = "鲁山";
}else if(arr[3].equals("pingyang")){
arr[3] = "平阳";
}else if(arr[3].equals("danling")){
arr[3] = "丹凌";
}else if(arr[3].equals("xinyuan")){
arr[3] = "新元";
}
//重新组合数组:代码 名称 电话 地区
String[] temp = {arr[2]+" ",arr[0],arr[1]+" ",arr[3]};
String s = "";
//确定院校名称的长度
while(temp[1].getBytes().length<30){
temp[1]+=" ";
}
//地区长度
while(temp[3].getBytes().length<8){
temp[3]+=" ";
}
for(int i=0;i<temp.length;i++){
s+=temp[i];
}
return s;
}
//获取文档中的数据
public static ArrayList<String> bufferedReader(){
//这里的路径如果是相对路径的话:直接定位到工程的下一目录src/包名/文件名
File f = new File("C:\\Users\\Administrator\\Desktop\\蓝桥训练真题\\2011-决赛真题\\Java高职\\4\\in.txt");
ArrayList<String> list = new ArrayList<String>();
try{
BufferedReader br = new BufferedReader(new FileReader(f));
while(br.ready()){
list.add(br.readLine());
}
br.close();
}catch(Exception ex){
ex.printStackTrace();
}
return list;
}
}
分享到:
相关推荐
在MATLAB中,将源文件读入并以二进制格式输出到文本文件是一个常见的数据处理操作,尤其在处理大量数据或需要与不同编程语言交换数据时。这个过程包括两个主要步骤:首先读取源文件,然后以二进制格式写入到新的文本...
在给定的"词法分析器 从文件读入源程序,以字符流形式输出"项目中,我们可以推测这个程序的主要功能是读取源程序文件,逐个处理其中的字符,识别出符合特定语言规范的词汇结构,并将其输出到控制台。这个过程通常...
下面是一个简单的Python脚本示例,用于将GBK编码的文件转换为UTF-8: ```python import codecs def convert_file_encoding(input_path, output_path): with codecs.open(input_path, 'r', 'gbk') as f_in, \ ...
在这个主题中,我们关注的是如何使用易语言结合GDIPlus库来实现图像格式的转换,无论是从文件中读取还是在内存中操作。 GDIPlus(Graphics Device Interface Plus)是Windows操作系统提供的一个图形处理库,它提供...
例如,从CSV转换为JSON,可以先使用`stringstream`将CSV数据读入内存,然后解析并构建JSON对象,最后将JSON写入新的文件。 此外,STL还提供了`std::transform`这样的高级工具,它可以用于对文件中的数据进行转换。...
Java 文件输入/输出编程实践 在本节中,我们将讨论 Java 语言中文件输入/输出编程的相关知识点,并通过实践代码来演示如何从文件中读取数据和将数据写入文件。 文件输入/输出简介 在 Java 编程中,文件输入/输出...
本话题主要涉及的是如何将一个包含十六进制数据的TXT文件读取并转换成十进制格式的TXT文件进行输出。这一过程需要理解二进制、十六进制和十进制之间的关系,以及如何在编程语言中进行这种转换。 首先,我们要了解...
字符串转换与文件操作 本资源涉及到三个主要知识点:字符串操作、文件操作和错误处理。 字符串操作 在本程序中,我们需要将输入的字符串中的小写字母转换成大写字母。这个过程可以通过遍历字符串,每遇到一个小写...
这个【更新代码】涉及的正是如何将源文件读入MATLAB,然后以二进制格式输出到文本文件。以下是对这个过程的详细解释: 首先,我们需要理解二进制文件和文本文件的区别。二进制文件是以机器可读的格式存储数据,每个...
在读取自由文件格式时,IDL使用ReadF函数从文件中读入自由格式数据,Printf函数写入自由格式数据到文件中。在读取自由文件格式时,IDL遵循以下几个规则: 1. 如果读入到字符串变量中,那么,在当前行剩下的所有字符...
csv2template csv2template将CSV文件转换为文本输出。 例如,您已将Packer机器可读的输出转换为Terraform配置文件。 templates文件夹中有一些示例模板。 在将行列表传递到模板之前,已将CSV文件完全读入内存。用法...
4. **读取文件数据**:接着,使用循环结构逐行读取文件数据,每次读取一行到一个数组或队列中,然后将这些数据转换为适当的格式(例如,将ASCII值转换为二进制)。 5. **将数据加载到内存模型**:创建一个内存模型...
总之,通过Delphi将jpg、bmp、wmf转换为emf格式,能够使你的应用程序具备更灵活的图像处理能力,尤其在需要高质量输出和矢量图形的情况下。这个过程涉及到图像处理的基础知识、Delphi编程技巧以及Windows API的使用...
标签 "dfm" 和 "txt" 是关键词,它们进一步强调了转换的输入和输出格式。.DFM文件是Delphi开发的关键组成部分,而.TXT文件则是一种通用的文本格式,易于阅读和处理。 在压缩包的子文件名 "程序D7" 中,"D7"可能指的...
为了保持原文件的格式,可能还需要处理每行的换行符。 这个程序的注释清晰,对初学者来说是一份很好的学习资源。通过阅读和理解代码,初学者可以了解如何在实际项目中操作文件,处理文本数据,并且理解数组的基本...
我在互联网上找了很久,发现没有人发布关于matlab从txt文档中读取16进制数转换为矩阵,再转换为2进制数矩阵,再按位拆分为01矩阵,处理完成后再转换为16进制输出的方法,这个程序也可以改写成读入十进制,输出十进制...
### 汇编语言程序:从键盘输入一串英文字母,分别将其转换为大写、小写并输出 #### 程序概述 本文档介绍了一个简单的汇编语言程序,该程序允许用户通过键盘输入一系列英文字母,并将这些字母分别转换成大写和小写...
- **一次性读取所有内容**:适用于小文件,如Python的`content = file.read()`,将整个文件内容一次性读入内存。 - **按块读取**:对于大文件,为避免一次性加载到内存中,可以使用`file.read(size)`来分块读取,...
Atomsk是一款强大的开源工具,专为处理和转换原子数据文件而设计。在材料科学和物理模拟领域,原子数据文件是至关重要的,它们包含了物质微观结构的信息,如原子位置、晶体结构、电荷分布等。Atomsk能够有效地读取、...
适用于地球物理专业绘制重磁等三维模型图绘制,利用Meshtool3d软件输出mesh和model文件,然后通过本软件转换为Tecplot能识别的文件格式,绘制漂亮的3维模型图