提取本地路径Jpg或者mp4文件的名字,导入mp4的名字,并导入数据库的源码

简介: 提取本地路径Jpg或者mp4文件的名字,导入mp4的名字,并导入数据库的源码

1、写一个实体类:imageName,这里用到ArrayList实体类进行排序,因此定义一个类

package zero.file.videoProject.bean.util;
 
public class imageName {
    private String name;
    private int num;
 
    public imageName() {
    }
    public imageName(String name,int num){
        this.name = name;
        this.num = num;
    }
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public int getNum() {
        return num;
    }
 
    public void setNum(int num) {
        this.num = num;
    }
 
    @Override
    public String toString() {
        return "imageName{" +
                "name='" + name + '\'' +
                ", num=" + num +
                '}';
    }
}

2、用正则表达式提取,ArrayList进行排序,

package zero.file.videoProject.util.test;
 
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import zero.file.videoProject.bean.Student;
import zero.file.videoProject.bean.util.imageName;
import zero.file.videoProject.bean.video;
import zero.file.videoProject.mappers.untils.tonameMapper;
 
import java.io.File;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserMapperTest {
    @Autowired
    public tonameMapper tonamejpg;
    @Test
    public void testInsert(){
        Pattern pattern = Pattern.compile("(.+(?=\\.mp4))+");
        Pattern pattern2 = Pattern.compile("^\\d+");
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要处理的文件所在的目录:");
        String folederPath = sc.nextLine();
        File f = new File(folederPath);
//        File f = new File("C:\\Users\\17517\\Videos\\bilibili\\Java");
        File[] fileArray = f.listFiles();
        String name = null;
        String name2 = null;
        List<Integer> list = new ArrayList<Integer>();
        ArrayList<imageName> imageName = new ArrayList<imageName>();
        Map<String,Integer> map = new HashMap<>();
        video video = new video();
        for (int i = 0; i <= fileArray.length - 1; i++) {
            Matcher matcher = pattern.matcher(fileArray[i].getName());
            while (matcher.find()) {
                name = matcher.group();
                Matcher matcher2 = pattern2.matcher(name);
                while (matcher2.find()) {
                    name2 = matcher2.group();
                    int num = Integer.valueOf(name2);
                    imageName s1 = new imageName(name,num);
                    imageName.add(s1);
                    map.put(name,num);
                }
            }
        }
        Collections.sort(imageName, new Comparator<imageName>() {
            @Override
            public int compare(imageName o1, imageName o2) {
                int num = o1.getNum() - o2.getNum();
                return num;
            }
        });
        for (imageName s : imageName){
            System.out.println(s.getName() + "," + s.getNum());
            video.setId(s.getName());
            video.setCategory(s.getName());
            video.setName(s.getName());
            video.setLabel(s.getName());
            tonamejpg.insert(video);
        }
    }
}

效果:用输入文件所在目录

3、就复制好路径,粘贴过去就导入到数据库中了


相关文章
|
1月前
|
SQL 关系型数据库 MySQL
数据库导入SQL文件:全面解析与操作指南
在数据库管理中,将SQL文件导入数据库是一个常见且重要的操作。无论是迁移数据、恢复备份,还是测试和开发环境搭建,掌握如何正确导入SQL文件都至关重要。本文将详细介绍数据库导入SQL文件的全过程,包括准备工作、操作步骤以及常见问题解决方案,旨在为数据库管理员和开发者提供全面的操作指南。一、准备工作在导
225 0
|
14天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
49 3
|
14天前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
17天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
59 2
|
1月前
|
SQL 关系型数据库 MySQL
|
1月前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
27 2
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置服务等,并与使用 RPM 包安装进行了对比,帮助读者根据需求选择合适的方法。编译源码安装虽然复杂,但提供了更高的定制性和灵活性。
222 2
|
2月前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
2月前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
【10月更文挑战第7天】本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择合适的方法。
58 3