You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java如何从URL读取T恤尺码文件分类存储并修改输出格式

T恤尺码分类程序输出格式调整方案

修改思路

只需对每行读取到的文本做简单分割处理即可实现需求:

  • 原文本结构固定为尺码,名,姓,按逗号分割每行内容后,取索引1的名和索引2的姓,中间加空格拼接,即可自动去掉开头的尺码标识和名姓之间的逗号
  • 将原逻辑中直接输出整行的代码,替换为输出拼接后的姓名内容即可

修改后完整代码

import java.io.IOException;
import java.io.PrintWriter;
import java.net.URL;
import java.util.Scanner;
      
public class SortShirtSizes {
    /**
     * 从URL读取文件,按尺码分类后输出到对应txt文件
     */
    public static void main(String[] args) throws IOException {
    
        try {
            /*从URL读取尺码文本*/
            String address = "https://bbmedia.dmacc.edu/CIS/CIS171/shirtsizes.txt";
            URL pageLocation = new URL(address);
            Scanner in = new Scanner(pageLocation.openStream());

            /*初始化不同尺码对应输出文件*/
            PrintWriter outToSmall = new PrintWriter("smallshirts.txt");
            PrintWriter outToMed = new PrintWriter("mediumshirts.txt");
            PrintWriter outToLarge = new PrintWriter("largeshirts.txt");
            PrintWriter outToXl = new PrintWriter("extralargeshirts.txt");
         
            String line = "";
         
            while (in.hasNextLine()) {
                line = in.nextLine().trim(); // 先去掉行首尾的空白字符
                // 跳过空行避免数组越界报错
                if(line.isEmpty()){
                    continue;
                }
                // 按逗号分割行内容
                String[] parts = line.split(",");
                // 拼接姓名:名 + 空格 + 姓
                String fullName = parts[1] + " " + parts[2];
                
                /*按尺码分类写入对应文件*/
                if (line.contains("S,")) {
                    outToSmall.println(fullName);
                }else if (line.contains("M,")) {
                    outToMed.println(fullName);
                }else if (line.contains("XL,")) {
                    outToXl.println(fullName);
                }else if (line.contains("L,")) {
                    outToLarge.println(fullName);
                }
            }
         
            // 关闭流资源
            in.close();
            outToSmall.close();
            outToMed.close();
            outToLarge.close();
            outToXl.close();
         
        }catch (IOException e) {
            System.out.println("https://bbmedia.dmacc.edu/CIS/CIS171/shirtorders2022.txt 暂时无法访问");
        }    
    }
}  

输出效果示例

处理后输出的文件内容如下:

Darsie Rigmand
Feodor Lornsen
Klement Antunes
Carleton Van Leeuwen         

内容的提问来源于stack exchange,提问作者Ullr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 12:57:02