读取文件排序后写入文件

Pandas学习——基础——文件读取与写入、基本数据结构、常用基本函数、排序、总结练习 Pandas学习——基础——文件读取与写入、基本数据结构、常用基本函数、排序、总结练习第一章 Pandas基础一、文件读取与写入1.读取2.写入二、基本数据结构1.Series2.DataFrame三、常用基本函数1.head和tail2.unique和nunique3.count和value_counts4.describe和info5.idxmax和nlargest6.clip和replace... 阅读详情

题目一个文件里面有字符1,2,3,4,5,6,7,8,9等数字,请将其取出并且排序后,写入另外一个文件中

(主要考察文件的操作,读取字符,和写入字符)



package fileSort;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class RWfile {
	private static List<String> list=new ArrayList<String>();
	public static void main(String[] args){
		RWfile rWfile=new RWfile();
		rWfile.rFile("E:\\1.txt");
		list=rWfile.arrange(RWfile.list);
		rWfile.wFile("E:\\2.txt");
		
	}
	//读取文件,按每行读取
	public void rFile(String file){
		String str="";
		File myFile=new File(file);
		BufferedReader bufferedReader;
		try {
			bufferedReader = new BufferedReader(new FileReader(myFile));
	
			while((str=bufferedReader.readLine())!= null){
					list.add(str);
			}
			bufferedReader.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	//写入文件,读取list写入String
	public void wFile(String file){
		File myFile=new File(file);
		//写入文件时候要先判断是否存在文件,没有则创建
		if(!myFile.exists()){
			try {
				myFile.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		try {
			BufferedWriter writer=new BufferedWriter(new FileWriter(myFile));
			for(String str:list){
				writer.write(str, 0, str.length());
				System.out.println(myFile.getPath());
			}
			writer.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	//处理读取的字符
	public List<String> arrange(List<String> list){
		List<String> myList=new ArrayList<String>();
		for(String s:list){
			String[] ss=s.split(",");
			int[] num=new int[ss.length];
			for(int i=0;i<ss.length;i++){
				num[i]=Integer.parseInt(ss[i]);//这里是按照每行的数字排序,可以改成全部
			}
			sort(num,0,num.length-1);
			StringBuffer buffer=new StringBuffer();
			int i=0;
			for(;i<num.length-1;i++){
				buffer.append(num[i]+",");
			}
			buffer.append(num[i]);
			myList.add(buffer.toString());
		}
		return myList;
	}
	//排序函数
	private void sort(int[] num, int low, int high) {
		if(low<high){ //如果不加这个判断递归会无法退出导致堆栈溢出异常
           int middle=partition(num,low,high);
           sort(num, low, middle-1);
           sort(num, middle+1, high);
        }
		
	}
	//分隔函数
	private int partition(int[] num, int low, int high) {
		int temp=num[low];
		while(low<high){
			
			while(low<high&&num[high]>=temp){
				high--;
			}
			num[low]=num[high];
			while(low<high&&num[low]<=temp){
				low++;
			}
			num[high]=num[low];
		}
		num[low]=temp;
		return low;
	}
}


编程实现先从标准输入中读取字符串,然后将字符串存到文件file1中,最后再将文件file1中的内容读取另存到文件file2中等功能。 立即下载

相关推荐

将文本文件a.txt中的单词排序后写入b.txt

有文本文件a.txt,每行一个英文单词。编制Java程序,读取该文件中的所有单词,然后按照单词长度降序排列;对于长度相等的单词,按照字典顺序降序排列。最后将排序后的单词按每个一行写入另一个文件b.txt。

Linux基础整理---1

一、目录和文件管理 1. ls (list) 功能描述:显示目录下的项目 常用选项: -a 显示所有文件,包括隐藏文件(隐藏文件不是不想让人看到,二十bioa'shi该文件是系统中重要的文件,不是必须,不要 动它)。 -i 显示文件的ID,long:长格式 -l 显示详细信息 -d 查看目录属性 ...

一扇门 178

2D激光slam四种算法建图效果对比

2d激光slam四种算法建图比较

m0_73791170的博客 8449

Python基础综合练习1——第3关:Python对文件的操作

第3关:Python对文件的操作 编写一个能将不同文件中的所有数字,按从小到大的顺序写入新的文件中的小程序 相关知识 为了完成本关任务,你需要掌握: Python 如何进行读写文件操作; Python 内置函数sorted的使用 Python对文件的读写操作 通常,Python 对文件的操作大致可分为下列三步: 通过open函数打开指定文件,并且获得文件的句柄; 通过上一步的文件句柄,对文件进行读(read)、写(write)操作; 通过文件句柄的close函数关闭文件句柄。 其中,对

yelitoudu的博客 6132

3.1使用Python读取excel的二维数据

要使用 Python 读取 Excel 的二维数据,可以使用 openpyxl 或 pandas 库。

kenshin1980的专栏 1032

Ubuntu图形界面崩溃?从tty到GUI的终极修复指南

本文提供了Ubuntu图形界面崩溃后进入tty的终极修复指南。详细介绍了如何诊断显示管理器(如LightDM或GDM3)状态,并通过重装、切换显示管理器、修复依赖、系统升级及排查显卡驱动等核心方案,逐步恢复GUI。帮助用户从命令行界面高效修复桌面环境,避免数据丢失。

vulkan6gpu的博客 778

使用Python按文件名中的数字大小排序

Python中的sorted函数可以对一个列表进行排序,其默认的排序方式是按照字符的Unicode编码大小进行排序。在实际开发中,经常需要对一些文件名、文件路径等进行排序,这就需要使用到自然排序。自然排序是一种将字符串中的数字按照数值大小排序的方式,而不是按照字符串顺序排序。具体来说,对于非数字部分的子串,可以直接替换成空字符串,这样它们在排序时就会被忽略掉,只关注数字部分的大小。如果只需要按数字部分进行排序,而不关注非数字部分的字典序排序,可以简单修改。,但使用自然排序时,排序结果为。

曾续缘的博客 2074

基于CatBoost回归模型的完整预测分析:从建模到SHAP可解释性分析

本文介绍了使用CatBoost回归模型进行完整预测分析的流程。首先导入必要的Python库并加载数据,进行数据预处理包括训练测试集划分和归一化处理。然后通过网格搜索优化CatBoost超参数,使用最优参数训练模型并评估预测性能。结果显示模型具有较高的决定系数(R²=0.9944)和较低的误差指标(RMSE=0.0696)。接着进行残差分析和正态性检验,发现残差基本服从正态分布。最后通过SHAP分析实现模型可解释性,识别关键特征影响。该方法为梯度提升树在回归问题中的应用提供了完整解决方案。

fx666_的博客 747

文件的基本操作

文件的创建和打开 f=open('date.txt','w') #创建一个文件并且打开 f=open('date.txt') #打开date.txt文件 文件的写入和读取 f.write('hello wolrd!') #写入信息 f.read() #读取信息存到暂存区 文件的关闭 f.close() #关闭当前文件 ...

KuQI滴滴滴的博客 580

Vivado安装教程:多版本共存的配置技巧

详解Vivado安装教程中的多版本共存配置技巧,帮助用户在同一系统中管理不同版本的Vivado开发环境,提升开发效率与兼容性,适用于需要切换版本的FPGA开发者。

weixin_35257663的博客 1777

告别切换烦恼!用Parallels Desktop的Host-Only网卡,在macOS上直接访问虚拟机里的公司内网

本文详细介绍了如何在macOS上使用Parallels Desktop的Host-Only网卡直接访问虚拟机内的公司内网,告别频繁切换操作系统的烦恼。通过配置Host-Only网络模式,实现主机与虚拟机的安全高效通信,特别适合需要频繁访问内网资源的IT从业者。文章包含分步指南、自动化脚本和常见问题解决方案,帮助用户优化工作流程。

weixin_28739079的博客 364

Java读取文件并对其排序后重新写入文件

读取文件中的内容并对其排序,并将其重新写入一个文件中 1,张三:25 2,张斯:23 3,张午:76 4,张流:35 5,张七:73 6,张八:63 7,张九:84 新文件格式如下: 7,张九:84 3,张午:76 5,张七:73 6,张八:63 4,张流:35 1,张三:25 代码如下: package javaoo.io;...

it1132的专栏 2219

华为OD机试真题2026双机位C卷 Python&JS 语言 实现【主次关联成环警告】

在ICT运维领域,现网运维工程师面向对设备上报的众多告警,往往需要筛选出最主要的告警优先处理,次等级的告警或许为同一个根因导致的告警,处理优先级会放后或者不处理,这样就诞生出主次关联告警的概念。给定一系列告警的主次关联关系,判断是否存在如下情况:

MISAYAONE的博客 269

读取文件,列表嵌套排序,写入表格【Python】

目录 问题 思路 解答 参考资料 问题: 读取给定的data.txt 文件,将该文件中的行按数学成绩从高到低进行排序,并将结果写入到test.XLS文件中 每隔一行保存一条数据,依次为“学号、姓名、数学成绩、语文成绩” 思路: 读取.txt文件 对嵌套列表按要求进行排序 写入表格 解答: import xlwt #写入文件 import xlrd #打开...

血柒柒柒柒柒柒柒 983

杰理AC695N/AC696N/AC701N系列芯片在线调音教程

本教程详细介绍AC695N/AC696N/AC701N芯片在线音效调试方法,包括工具准备(需安装杰理包管理器)、程序修改(需关闭USB功能并启用在线调试宏)、连接方式(USB或串口)、音效调节步骤(EQ和混响参数调整)以及配置保存。注意事项包括版本匹配、连接检查和供电稳定等,并提供常见问题解决方案。适用于快速配置实时音效调试环境并保存最终配置。

qq_42014563的博客 1406

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

实现读取两个txt文件,按照成绩排序,把最后结果按照大到小的顺序写入新文件

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOExc...

lyru_95的博客 3332

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【C语言】文件的存放、读取、利用文件创建链表、链表排序以及将其写入文件

【代码】【C语言】文件的存放、读取、利用文件创建链表、链表排序以及将其写入文件。

XING_Gou的博客 4363

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

读取从a.txt中读取一个字符串,排序后写入b.txt文件中

读取从a.txt中读取一个字符串,排序后写入b.txt文件中

wangyanming123的博客 1万+

python panda包操作excel(写入) 读取csv文件/toList/排序/获取指定行

1.读取csv文件,转成list ([[xx],[xx]]),按日期列排序,获取最后一行的数据,写入excel. 2.代码: # -*- coding:utf-8 -*- import requests from bs4 import BeautifulSoup import pandas as pd from urllib import urlencode from xml.dom import...

qq_41799291的博客 6206

java从文件按行读取数字排序后写入文件

java从文件按行读取数字排序后写入文件 java读写文件 import java.io.BufferedReader; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; public class lineSort { public static void main(String[]

Rhdykx的博客 1053

go使用10个协程生成1000个随机数写入文件,然后读取排序写入新文件

思路:一个协程处理一个文件读写和排序。

mengqiao0422的博客 801

数字存取操作:让用户输入8个整数,将这些数写入文件num.txt中;然后从该文件读取这些数,在内存中对它们进行逆序排序,再打印输出结果

接着,程序通过FileInputStream对象从"num.txt"文件中读取数字,并将它们存储在一个长度为8的整数数组reversedNumbers中。需要注意的是,在读取文件时需要使用Scanner对象逐行读取,然后将读取的字符串解析成整数。接着,程序通过FileReader对象从"num.txt"文件中读取数字,并将它们存储在一个长度为8的整数数组reversedNumbers中。需要注意的是,在读取文件时需要使用Scanner对象逐行读取,然后将读取的字符串解析成整数。

qq_60093337的博客 231

python读取文件名并排序后写入txt中

Annotations里面的文件如下一共111个,注意查看隐藏文件, 可能存在".Ds_Store"文件目标: 读取不需要后缀的文件名,并写入txt文件中如下:code:import os file_path = "Annotations" # os.listdir(file)会历遍文件夹内的文件并返回一个列表 path_list = os.listdir(file_path) # print(...

Pichairen 1万+

Pandas基础:文件读取与写入、Series和Dataframe、常用基本函数、排序

import pandas as pd import numpy as np 查看Pandas版本 pd.__version__ 一、文件读取与写入 1.读取 (a)csv格式 df = pd.read_csv(r'C:\Users\chenyiqun\Desktop\joyful-pandas-master\joyful-pandas-master\data\table.csv') df.head() (b)txt格式 df_txt = pd.read_table(r'C:\Users\cheny

我的AI笔记 5490
上一篇: android activity生命周期
下一篇: HBASE在win10下的Linux子系统下安装(一)
yps_leaf
博客等级 码龄14年 3粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值