向一个文件中写入字符,可以规定每行字数

爬虫抓的小说,存电脑用的。

/**
	 * 向一个文本中写入字符,可以规定每行字数
	 * @param file  目标文件.
	 * @param string   要写入的字符串 
	 * @param quantity 每行想要写入的字数
	 * @param append 是否覆盖原来文件
	 * @throws IOException 
	 */
	public static void writeExpectQuantityCharPerLine2File(File file,String string,int quantity,boolean append) throws IOException {
		
		FileWriter fw = new FileWriter(file,append);
		
		BufferedWriter bw = new BufferedWriter(fw);
		
                //根据字符串长度,每行字数,计算要写多少行,进行循环
		for (int i = 0; i < (string.length() + quantity) / quantity; i++) {
                        
                        //最后一行可能写不满,加个判断,其余行都写满
			if (i == (string.length() + quantity) / quantity - 1) {
				bw.write(string, quantity * i, string.length() % quantity);
				bw.newLine();
				bw.newLine();
				bw.flush();
				//fw.flush();
			} else {
				bw.write(string, quantity * i, quantity);
				bw.newLine();
				bw.newLine();
				bw.flush();
				//fw.flush();
			}
		}

		fw.close();
		bw.close();

	}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在C语言,可以使用标准库函数fwrite()来向文件写入字符串。该函数原型如下: size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream); 其,ptr是指向存储字符串的缓冲区的指针,size是每个数据元素的大小(通常为1),count是要写入的数据元素数量,stream是要写入文件指针。 要将字符串写入文件,首先需要打开要写入文件,可以使用fopen()函数来打开文件,原型如下: FILE *fopen(const char *filename, const char *mode); 其,filename是要打开的文件名,mode是打开文件的模式,如果文件不存在则创建文件并打开,如果文件已经存在则打开文件并截断(即清空文件)。 使用fwrite()函数将字符串写入文件示例如下: ``` #include <stdio.h> int main() { const char *str = "Hello, World!"; FILE *file = fopen("output.txt", "w"); if (file != NULL) { fwrite(str, sizeof(char), strlen(str), file); fclose(file); printf("字符串写入文件成功!\n"); } else { printf("打开文件失败!\n"); } return 0; } ``` 在上述示例,我们定义了一个字符串"Hello, World!",然后使用fopen()函数打开一个文件output.txt,打开模式为"w",表示写入模式。如果文件打开成功,则使用fwrite()函数将字符串写入文件,并使用fclose()函数关闭文件。最后,打印出字符串写入文件成功的消息。 需要注意的是,如果文件打开失败,会返回一个空指针,因此在写入文件前需要做错误处理。此外,在使用fwrite()函数时,size参数通常为1,因为写入的是字符串,每个数据元素的大小都是1。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值