51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 1770|回复: 4

[求助] 最近在写自动化,使用java+selenium,如何实现删除生成文件中的内容?

[复制链接]
  • TA的每日心情
    奋斗
    2017-9-19 09:36
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]测试排长

    发表于 2017-5-22 15:20:59 | 显示全部楼层 |阅读模式
    如题:
    1、我自动化是模拟页面下单,下单成功后会把订单号全部保存到一个指定的文件中:orderrecord.csv中
    2、订单完成后我有个取消订单的流程,取消订单的输入值是从1中的orderrecord.csv中获取的订单号
    3、我想实现订单取消完成后,把1中orderrecord.csv中的订单全部删除,只留首行,这个要怎么实现了?有懂java的大神帮忙看见不?
    orderrecord.csv文件中的内容:
    我之前自己写了代码,但是必须要重新生成一个新的文件才可以,我想要在原来文件中删除的:
    package PublicClass;

    import java.io.BufferedReader;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.OutputStreamWriter;

    public class OrderDelete {
            public static String OrderUpdate(String file) {
                    BufferedReader bre = null;
                    OutputStreamWriter pw = null;// 定义一个流
                    String str = null;
                    try {
                            bre = new BufferedReader(new FileReader(file)); // 此时获取到的bre就是整个文件的缓存流
                            pw = new OutputStreamWriter(new FileOutputStream(PubPath.pathGet("orderdelet1.csv")));// 确认流的输出文件和编码格式,此过程创建了实例
                            while ((str = bre.readLine()) != null) // 判断最后一行不存在,为空结束循环
                            {
                                    if (!str.startsWith("您的订单号")) {
                                            pw.write(str);
                                            pw.flush();

                                    }
                            }
                    } catch (Exception e) {
                            e.printStackTrace();
                    }finally{
                            try {
                                    if(bre != null){
                                            bre.close();
                                    }
                                    if(pw != null){
                                            pw.close();
                                    }
                            } catch (IOException e) {
                                    e.printStackTrace();
                            }
                    }
                    return str;
            }
    }

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    10 小时前
  • 签到天数: 2637 天

    连续签到: 5 天

    [LV.Master]测试大本营

    发表于 2017-5-22 17:22:11 | 显示全部楼层
    感觉找个开发就能解决。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-12-15 15:17
  • 签到天数: 138 天

    连续签到: 2 天

    [LV.7]测试师长

    发表于 2017-5-22 22:11:35 | 显示全部楼层
    你要按照一行一行的获取和判断  就使用java中io流的printStream类   使用readline 和 println读和写  可以根据这个方法返回值进行判断么

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10 赶快去商城换取奖.

    查看全部评分

    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-3-29 18:10 , Processed in 0.067195 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表