window 下通过 source 读文件各种鬼 改用 BufferedReader
用于删除文件中中文
object ChineseDrop extends App {
// val stArray = Array("胜多负少","abadsf","13123123")
// stArray.foreach( word => println(s" $word is ${isChinese(word)} "))
//G:\\fromHD\\勇敢的心\\勇敢的心.srt
if (args.size < 1) {
println(" input file name "); System.exit(-1)
}
val in = new BufferedReader(new InputStreamReader(new FileInputStream(args(0)), "utf-8"))
val writer = new PrintWriter(new File(args(0) + ".eng"))
var str = in.readLine()
while (str != null) {
println(s" $str is ${isChinese(str)} ")
if (!isChinese(str)) writer.println(str)
str = in.readLine()
}
in.close()
writer.close()
// 根据Unicode编码完美的判断中文汉字和符号
private def isChinese(c: Char): Boolean = {
val ub: Character.UnicodeBlock = Character.UnicodeBlock.of(c)
if ((ub eq Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS)
|| (ub eq Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS)
|| (ub eq Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A)
|| (ub eq Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B)
|| (ub eq Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION)
|| (ub eq Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS)
|| (ub eq Character.UnicodeBlock.GENERAL_PUNCTUATION))
return true
false
}
// 完整的判断中文汉字和符号
def isChinese(strName: String): Boolean = {
strName.toCharArray.foreach(c => if (isChinese(c)) return true)
false
}
}
source 的用法 对于不同字符 可以在 fromfile 后面加入 curry 函数 "utf-8" ....
//文件读取
val file=Source.fromFile("E:\\scalaIO.txt")
for(line <- file.getLines)
{
println(line)
}
file.close
分享到:
相关推荐
文件输入输出,写的一个例子,关于streamread,streamwrite的使用。
C#删除文件到回收站DEMO源码 原理:调用Microsoft.VisualBasic.FileIO功能删除文件、文件夹到回收站。实测通过。DEMO为控制台程序,可方便地将代码移植到您的项目中。
fileio is the verilog file
file input and output
fileIO_sample.c_fileIO_源码.zip
一个dir中较好使用的文件读取和写入的插件,里面包含了基本的使用实例说明,下载后直接添加即可使用。网络上已经很难再下到了
FileIO.jar
MATLAB MAT File IO Library
SQL Tuning - File IO Performance
C# File 类 (System_IO)
Qt6 QML Book/扩展QML/使用FileIO 示例源码 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下 仅供相关爱好者交流使用,请于下载24小时内删除
Qt6 QML Book/扩展QML/FileIO实现 示例源码 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下 仅供相关爱好者交流使用,请于下载24小时内删除
file.io实用程序在您的终端上使用临时文件共享服务!... 基本上,唯一的可选参数是有效期限,例如./fileio -e 1m somefile.png例子输入: ./fileio somefile.png输出: Uploading to file.io...Link:
1、资源内容:基于 Microsoft.VisualBasic.FileIO.TextFieldParser 的简单 CSV 分析器 2、适用人群:计算机,电子信息工程、数学等专业的学习者,作为java实战项目,课程设计,毕业设计“参考资料”参考学习使用。 3...
资源分类:Python库 所属语言:Python 资源全名:exoedge_fileio-20.8.3-py2.py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
android 下的文件读写操作源码,可供入门学习
Linux c 文件io 读写源码 全集
自己用java编写的文件读写,包括字节流、字符流、缓冲字节流、缓冲字符流的读入和写出,jar包下载好可以在编译器里导入,也可以在cmd里输入java -jar 。并将jar包拖入。注:java和-jar间有空格,-jar之后再打一个...
是一个记事本,很好用。没有用任何的辅助图形编辑工具。