`

file io

 
阅读更多
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


分享到:
评论

相关推荐

    C#调用Microsoft.VisualBasic.FileIO删除文件到回收站DEMO源码

    在本文中,我们将深入探讨如何使用C#编程语言来实现删除文件到回收站的功能,具体是基于Microsoft.VisualBasic.FileIO库的。这个功能在处理用户数据时尤其重要,因为它提供了安全的删除方式,允许用户有机会恢复误删...

    FileIO+xtra+用法.rar

    《FileIO+xtra+用法》 在计算机编程领域,文件输入/输出(File Input/Output,简称File IO)是程序与外部存储设备交互的重要环节。在这个名为"FileIO+xtra+用法.rar"的压缩包中,我们找到了一个专为处理文件读取和...

    fileIO_sample.c_fileI/O_

    在给定的标题“fileIO_sample.c_fileI/O_”和描述“file input and output”中,我们可以理解这是一个关于C语言实现文件I/O操作的示例代码。下面将详细介绍C语言中的文件I/O操作,并通过`fileIO_sample.c`这个文件名...

    fileio_test_FileIo_TheTest_

    本文将深入探讨“fileio_test_FileIo_TheTest_”这个主题,它涉及Verilog中的文件输入/输出(File I/O)操作,这是在验证和调试过程中非常重要的一个方面。 在Verilog中,File I/O允许我们读取和写入文件,这对于...

    FileIO输入输出

    文件输入输出,写的一个例子,关于streamread,streamwrite的使用。

    FileIO.rar_辅助

    标题中的"FileIO.rar_辅助"表明这是一个与文件输入输出(File Input/Output,简称File IO)相关的资源,可能是为了辅助理解和学习File IO操作而创建的一个压缩包。描述提到“是一个记事本,很好用。没有用任何的辅助...

    FileIO.rar_FileIo_andriod driver_android_android 文件_android 读

    在Android系统中,文件输入/输出(File Input/Output,简称FileIO)是应用程序与本地存储交互的基础。本文将深入探讨Android平台上的文件操作,包括读取、写入、创建和管理文件,以及如何利用驱动程序进行高效的数据...

    fileIO_sample.c_fileIO_源码.zip

    本篇将详细探讨`fileIO_sample.c_fileIO_源码.zip`中涉及的文件I/O相关知识点,帮助你深入理解这一核心概念。 1. 文件操作基础: C语言提供了标准库`stdio.h`,其中包含了一系列用于文件操作的函数,如`fopen()`, ...

    FileIO-V100R002

    《FileIO-V100R002:C语言实现的Windows文件夹操作封装库》 FileIO-V100R002是针对Windows操作系统的一个C语言编写的文件夹操作封装库,主要目的是为了方便开发者对文件夹进行高效、稳定的操作。这个版本修复了上一...

    Fileio.rar_fat32

    标题中的"Fileio.rar_fat32"表明这是一个与文件I/O操作相关的程序,特别是针对FAT32文件系统的。FAT32是Microsoft开发的一种文件系统,广泛应用于U盘、移动硬盘等存储设备,它支持的最大单个文件大小为4GB。 描述中...

    2_fileIO.rar

    在本资料"2_fileIO.rar"中,我们可以期待找到一系列关于Linux C文件I/O读写的源码示例,这对于理解这一核心概念至关重要。 在Linux环境下,C语言使用标准库`stdio.h`、`fcntl.h`、`unistd.h`和`sys/stat.h`等头文件...

    FileIO.jar

    FileIO.jar

    fileio.tar.gz_project

    【fileio.tar.gz_project】是一个基于IEEE的项目,其核心关注点在于文件输入输出(File I/O)操作。在IT领域,文件I/O是任何软件系统的基础,它涉及到程序与磁盘、网络或其他存储设备之间的数据交换。在这个项目中,...

    C# File 类 (System_IO)

    C# File 类 (System_IO)

    fileio-utility:在您的终端上使用file.io-临时文件共享服务!

    file.io实用程序在您的终端上使用临时文件共享服务!... 基本上,唯一的可选参数是有效期限,例如./fileio -e 1m somefile.png例子输入: ./fileio somefile.png输出: Uploading to file.io...Link:

    基于 Microsoft.VisualBasic.FileIO.TextFieldParser 的简单 CSV 分析器

    1、资源内容:基于 Microsoft.VisualBasic.FileIO.TextFieldParser 的简单 CSV 分析器 2、适用人群:计算机,电子信息工程、数学等专业的学习者,作为java实战项目,课程设计,毕业设计“参考资料”参考学习使用。 3...

    Python库 | exoedge_fileio-20.8.3-py2.py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:exoedge_fileio-20.8.3-py2.py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Toblerone's FileIO.jar

    自己用java编写的文件读写,包括字节流、字符流、缓冲字节流、缓冲字符流的读入和写出,jar包下载好可以在编译器里导入,也可以在cmd里输入java -jar 。并将jar包拖入。注:java和-jar间有空格,-jar之后再打一个...

    fileio

    本文将深入探讨“fileio”这个项目,它是一个用C++编写的、围绕Unix文件描述符的包装器。文件描述符是Unix和类Unix系统(如Linux)中访问文件和设备的一种抽象机制。下面我们将详细解析该项目的实现、需求以及如何...

Global site tag (gtag.js) - Google Analytics