首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Java8将从外部txt文件读取的带引号的ArrayList<String>转换为不带引号的ArrayList<String>

可以通过以下步骤实现:

  1. 首先,你需要读取外部txt文件并将其内容存储在一个ArrayList<String>中。可以使用Java的File类和Scanner类来实现。具体代码如下:
代码语言:txt
复制
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        ArrayList<String> quotedList = new ArrayList<>();

        try {
            File file = new File("input.txt");
            Scanner scanner = new Scanner(file);

            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();
                quotedList.add(line);
            }

            scanner.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        System.out.println("Quoted List: " + quotedList);
    }
}

请将代码中的"input.txt"替换为你实际的txt文件路径。

  1. 接下来,你可以使用Java8的Stream API和Lambda表达式来转换带引号的ArrayList<String>为不带引号的ArrayList<String>。具体代码如下:
代码语言:txt
复制
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        ArrayList<String> quotedList = new ArrayList<>();

        try {
            File file = new File("input.txt");
            Scanner scanner = new Scanner(file);

            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();
                quotedList.add(line);
            }

            scanner.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        List<String> unquotedList = quotedList.stream()
                .map(s -> s.replaceAll("\"", ""))
                .collect(Collectors.toList());

        System.out.println("Unquoted List: " + unquotedList);
    }
}

这段代码使用了Stream的map操作来对每个元素进行处理,使用replaceAll方法将双引号替换为空字符串。最后,使用collect操作将处理后的元素收集到一个新的List中。

以上就是使用Java8将从外部txt文件读取的带引号的ArrayList<String>转换为不带引号的ArrayList<String>的完整代码。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java StringTokenizer快速指南

StringTokenizer方法不区分标识符,数字和引号字符串,也不忽略注释。  分隔符集合(用于分割字符串符号)可以在创建时指定,也可以基于每个符号。 ...java8 方法  既然StringTokenizer实现了Enumeration 接口,我们可以和javaCollections 接口一起使用。...既然Enumeration是对象类型,我们需要类型转换为String类型(这依赖业务,如果有需要,可能转换为Integer/Float)  StringTokenizer构造函数  除了缺省构造函数StringTokenizer...读csv文件  下面通过StringTokenizer实现一个真实需求,从csv文件读取信息,基于用户给定分隔符进行解析数据:  public List getTokensFromFile...基于上述两个参数,逐行读取数据,然后使用StringTokenizer获取每行分割信息。

83100
  • 老程序员Java数组List都这样操作「建议收藏」

    文章目录 一、使用Arrays.asList() 二、通过ArrayList构造器 三、集合工具类Collections.addAll() 四、Java8 stream流 五、Java9 内置方法 六...使用场景:Arrays.asList(strArray)方式仅能用在将数组转换为List后,不需要增删其中值,仅作为数据源读取使用。...arrayList.add("3"); System.out.println(arrayList); } // 调用代码省略 运行结果: [1, 2, 3] 使用场景: 需要在将数组转换为List...四、Java8 stream流 如果JDK版本在1.8以上,可以使用流stream来将下列3种数组快速转为List,分别是int[]、long[]、double[],其他数据类型比如short[]、byte...由于这只是一种常用方法封装,不再纳入一种崭新数组List方式,暂时算是java流送给我们常用工具方法吧。

    47040

    Linux文本处理详细教程

    我对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python吧; 1.1. find 文件查找 查找txt和pdf文件: find . \( -name...也可使用引号使用引号后,双引号会对表达式求值: sed 's/$var/HLLOE/' 当使用引号时,我们可以在sed样式和替换字符串中指定变量; eg: p=patten r=replaced...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行 使用不带参数print时,会打印当前行 echo -e ".../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格): awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部...string):将正则匹配到第一处内容替换为replacement_str; match(regex,string):检查正则表达式是否能够匹配字符串; length(string):返回字符串长度

    4.3K20

    搞定Linux Shell文本处理工具,看完这篇集锦就够了

    ; 我对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python吧; 1、find 文件查找 查找txt和pdf文件 find . \( -name...[en] [example] 子串匹配标记 第一个匹配括号内容使用标记 \1 来引用 sed 's/hello\([0-9]\)/\1/' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行 使用不带参数print时,会打印当前行; echo -.../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部...string):将正则匹配到第一处内容替换为replacement_str; match(regex,string):检查正则表达式是否能够匹配字符串; length(string):返回字符串长度

    6.3K41

    Linux Shell 文本处理工具集锦

    我对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python吧; find 文件查找 查找txt和pdf文件 find . \( -name "*.txt...\1 来引用 sed 's/hello\([0-9]\)/\1/' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后,双引号会对表达式求值: sed 's/$var/HLLOE/' 当使用引号时...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行 使用不带参数print时,会打印当前行; echo -e.../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部...string):将正则匹配到第一处内容替换为replacement_str; match(regex,string):检查正则表达式是否能够匹配字符串; length(string):返回字符串长度

    3.2K70

    史上最全 Linux Shell 文本处理工具集锦,快收藏!

    /commands.sh {} ; -print定界符 默认使用' '作为文件定界符; -print0 使用''作为文件定界符,这样就可以搜索包含空格文件; 02 grep 文本搜索 grep...] [example] 子串匹配标记 第一个匹配括号内容使用标记 来引用 sed 's/hello([0-9])//' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后,双引号会对表达式求值...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行 使用不带参数print时,会打印当前行; echo -e.../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部...):将正则匹配到第一处内容替换为replacement_str;match(regex,string):检查正则表达式是否能够匹配字符串;length(string):返回字符串长度 echo | awk

    4K50

    Linux文本处理工具,看这篇就够了。

    /commands.sh {} ; -print定界符 默认使用' '作为文件定界符; -print0 使用''作为文件定界符,这样就可以搜索包含空格文件; 02 grep 文本搜索 grep...] [example] 子串匹配标记 第一个匹配括号内容使用标记 来引用 sed 's/hello([0-9])//' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后,双引号会对表达式求值...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行 使用不带参数print时,会打印当前行; echo -e.../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部...):将正则匹配到第一处内容替换为replacement_str;match(regex,string):检查正则表达式是否能够匹配字符串;length(string):返回字符串长度 echo | awk

    4.5K10

    搞定 Linux Shell 文本处理工具

    对shell脚本使用原则是命令单行书写,尽量不要超过2行; 如果有更为复杂任务需求,还是考虑python吧. 1、find 文件查找 查找txt和pdf文件 find . ( -name "*....'s/hello([0-9])//' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后,双引号会对表达式求值: sed 's/$var/HLLOE/' 当使用引号时,我们可以在sed...stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行,使用不带参数print时,会打印当前行; echo -e.../linux/' #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}'/etc/passwd 读取命令输出 使用getline,将外部...):将正则匹配到第一处内容替换为replacement_str; match(regex,string):检查正则表达式是否能够匹配字符串; length(string):返回字符串长度 echo

    1.7K10

    搞定 Linux Shell 文本处理工具操作命令

    ;对shell脚本使用原则是命令单行书写,尽量不要超过2行;如果有更为复杂任务需求,还是考虑python吧. 1、find 文件查找 查找txt和pdf文件 find . ( -name "*.txt...第一个匹配括号内容使用标记 来引用 sed 's/hello([0-9])//' 双引号求值 sed通常用单引号来引用;也可使用引号使用引号后,双引号会对表达式求值: sed 's/$var/...,重复这个过程,直到文件全部被读取完毕; 3.执行end语句块; print 打印当前行,使用不带参数print时,会打印当前行; echo -e "line1 line2"| awk 'BEGIN{.../linux/'  #不包含linux文本行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}'/etc/passwd 读取命令输出 使用getline,将外部...):将正则匹配到第一处内容替换为replacement_str; match(regex,string):检查正则表达式是否能够匹配字符串; length(string):返回字符串长度 echo |

    2.4K20

    简单&基础shell操作_转发分享

    另一个解释型语言,执行时,需要使用解释器一行一行地转换为代码,如:awk, perl, python与shell等。...: 例如:当一个路径为 /home/xiaoming/1.txt时,如何怎么它路径(不带文件) 和如何得到它文件名??...得到文件使用 bashname命令: 复制代码 # 参数: # -a,表示处理多个路径; # -s, 用于去掉指定文件后缀名; basename /home/yin/1.txt...1.txt -> 1 basename /home/yin/1.txt .txt -> 1 复制代码 得到路径名(不带文件名)使用 dirname命令: 复制代码 参数:没有啥参数...像删除变量一样,删除函数也可以使用 unset 命令,不过要加上 .f 选项,如下所示: unset .f function_name shell文件包含: Shell 也可以包含外部脚本,将外部脚本内容合并到当前脚本

    1K10

    shell 快速入门

    " # 带不带引号看起来一样,但是对于输出空格有区别 VAR="A B C" echo 不带引号对于连续空格只输出一个:$VAR echo "带引号会把所有空格输出:$VAR" #...echo '转义符在单引号内输出 \,单引号只把内容作为字面量输出' echo '转义符不能用,单引号内不能输出单引号' # `` 反引号:命令替换,将命令标准输出作为值赋给某个变量 # 命令替换也可以使用.../bin/bash # 循环 # Shell 循环主要有 for、while、until、select 几种 # for 循环 # 列表 for 循环: # for VAR in (list)...# 比如,我们可以输出当前目录下所有 sh 文件 for VAR in $(ls | grep sh) do echo $VAR done # 如果 for 后面没有 in ,则相当于是...# >& 标识输出重定向,讲一个标识输出重定向到另一个标识输入 # < 标准输入重定向,命名将从指定文件读取输入,而不是从键盘中读取输入 # | 管道,从一个命令中读取输出,作为另一个命令输入

    1.9K30

    Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作

    读取文本文件写入csv Python安装pandas模块 确认文本文件分隔符 # pyhdfs读取文本文件,分隔符为逗号, from pyhdfs import HdfsClient client =...csv df.to_csv('demo.csv',encoding='gbk',index=None)#参数为目标文件,编码,是否要索引 补充知识:记 读取hdfs pandas 再经由pandas...转为csv一个坑 工作流程是这样读取 hdfs csv 文件,采用是 hdfs 客户端提供 read 方法,该方法返回一个生成器。...为此,我做法如下: 匹配逗号是被成对引号包围字符串。 将匹配到字符串中逗号替换为特定字符。 将替换后新字符串替换回原字符串。 在将原字符串中特定字符串替换为逗号。...为了说明效果,引用pandas自带读取csv方法: ? 可以看到pandas读取该位置数据也是字符串,引号正是作为一个字符串声明而存在。

    6.5K10

    Groovy快速入门看这篇就够了

    'Android进阶解密' 双引号字符串 要想插值可以使用引号字符串,插值指的是替换字符串中占位符,占位符表达式为${}或者以$为前缀。...GString String是不可变,GString却是可变,GString和String即使有相同字面量,它们hashCodes值也可能不同,因此应该避免使用使用GString作为Mapkey...8.1 文件读取 我们可以在PC上新建一个name.txt,在里面输入一些内容,然后用Groovy来读取文件内容: def filePath = "D:/Android/name.txt" def...file = new File(filePath) ; file.eachLine { println it } 可以看出Groovy文件读取是很简洁,还可以更简洁些: def filePath...= "D:/Android/name.txt" def file = new File(filePath) ; println file.text 8.2 文件写入 文件写入同样十分简洁: def filePath

    13.8K63

    aspose-words java word 转换 服务器乱码解决 - 崔笑颜博客

    具体操作: 也可以直接使用字体 经测试没问题 有的系统版本原因 也会导致乱码 链接: https://pan.baidu.com/s/1Fj6pqfNDi__sdBJthdFCFg 提取码: k35v...aspose-words word图片 这里所用到jar包 和这里所用一样 jar包下载 和谐文件 将word转换为单张图片 // 将word 转化为图片一张 public static...(); //截取不带后缀名字段 String fileName = name.substring(0, name.lastIndexOf(".")); //文件上传路径 String...获取文件名字 File file = new File(wordfile); String name = file.getName(); //截取不带后缀名字段 String fileName...base64 前台预览 业务需求 word转换成在线预览 结合这里是word图片 也可以直接转换为在线预览 public static String parseFileToBase64_PNG1(InputStream

    3.8K10

    Java中数组和List相互转换常用方式

    使用场景: Arrays.asList(strArray)方式仅能用在将数组转换为List后,不需要增删其中值,仅作为数据源读取使用。...: 使用场景: 需要在将数组转换为List后,对List进行增删改查操作,在List数据量不大情况下,可以使用。...("删除数据后List为:" + strList); } 测试结果: 使用场景: 需要在将数组转换为List后,对List进行增删改查操作,在List数据量巨大情况下,优先使用,可以提高操作速度...5、方式五:使用stream方式 如果是java8以上版本,可以使用stream方式进行转换,该方式转换后List也是支持增删改操作。...: 使用场景: 支持Java8版本及以上可以使用该方式进行转换。

    65710

    Java8-Stream在集合中8种应用案例

    前言 Java8新特性我们使用应该比较多了,今天这里整理了个人使用最多8种场景,希望对大家有所帮助。...遍历 遍历也许是我们使用最多功能了,在Java8之前我们遍历集合通常会采用for循环,迭代器,而在Java8中有了更加简介方法: public static void main(String...,比如我们需要在集合中找到属性ID为10对象,将其取出,Java8之前我们通常会遍历集合,使用if判断,然后匹配到使用break跳出循环,但是在Java8中,我们可以使用anyMatch达到相同效果...,前端会存在传递使用某个符号(逗号)隔开字符串,我们通常会将其转换为集合,作为批量查询条件。...或者我们需要将集合转换为逗号隔开字符。

    1.8K30
    领券