绝绝子神器!食品法规瞬间读懂,建议收藏上天在提醒你!

食品安全法律小助手

1、前言

从事食品相关工作,必须办理健康证,。现在粤省事app上可查看健康证,并且附带相关法律文件pdf,于是下载下来喂给GPT。让GPT学习,我不学习。

2、pdf转成txt文件

要使用Java将PDF文件转换为文本文件,您可以使用Apache PDFBox库,这是一个开源项目,可以从PDF文件中提取文本。

首先,确保将PDFBox添加到您的项目依赖中。如果您使用的是Maven,可以在pom.xml中添加以下依赖:

<dependencies>
    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>2.0.24</version>
    </dependency>
</dependencies>

确保使用最新版本的PDFBox。

以下是用Java编写的一个简单的程序,使用PDFBox库将PDF转换为文本文件:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class PdfToTxtConverter {

    public static void convertPdfToTxt(String pdfFilePath, String txtFilePath) {
        // 加载PDF文档
        try (PDDocument document = PDDocument.load(new File(pdfFilePath))) {
            if (!document.isEncrypted()) {
                // 使用PDFTextStripper来提取文本
                PDFTextStripper stripper = new PDFTextStripper();
                String text = stripper.getText(document);

                // 将提取的文本写入到.txt文件中
                try (FileWriter writer = new FileWriter(txtFilePath)) {
                    writer.write(text);
                    System.out.println("Text was successfully extracted and saved to " + txtFilePath);
                }
            } else {
                System.err.println("PDF is encrypted, cannot extract text.");
            }
        } catch (IOException e) {
            System.err.println("An error occurred while converting the PDF to a text file: " + e.getMessage());
        }
    }

    public static void main(String[] args) {
        // 指定PDF路径和希望保存文本文件的路径
        String pdfFilePath = "path/to/your/document.pdf";
        String txtFilePath = "path/to/your/output.txt";

        // 调用方法来转换文件
        convertPdfToTxt(pdfFilePath, txtFilePath);
    }
}

将上面代码中的pdfFilePathtxtFilePath替换成实际的PDF文件路径和希望输出的文本文件路径。

运行上述程序,它将把PDF文件内容转换为纯文本并保存到指定的文件路径。请注意,由于版权或技术限制,某些PDF文件可能不允许文本提取。

3、txt文件分割成一小段文字

public class LawArticleSplitter {
    public static void main(String[] args) {
        String lawText = "第一条 为了做好饮料生产许可审查工作,依据《中华人民\n" +
            "共和国食品安全法》及其实施条例、《食品生产许可管理办法》、\n" +
            "等有关法律法规、规章,制定饮料生产许可审查细则(以下简称\n" +
            "细则)。\n" +
            "第二条 本细则应与《食品生产许可审查通则》结合使用,\n" +
            "适用于饮料生产许可审查工作。仅有包装场地、工序、设备,没\n" +
            "有合理的设备布局和工艺流程的,不予生产许可。";

        // Splitting the law text into individual articles
        String[] articles = lawText.split("第[0-9]+条");

        // Output the first two articles
        System.out.println("第一条:" + articles[1]);
        System.out.println("第二条:" + articles[2]);
    }
}

4、一小段文字喂给数据库

要将一小段文字存储到数据库中,您需要选择一个数据库系统并建立数据库连接。以下示例将展示如何使用Java与MySQL数据库进行交互,并存储一段文字。

假设您已经有了一个名为mydb的MySQL数据库,并且在这个数据库中有一个名为texts的表格,该表格包含两个字段:id(主键)和content(用于存储文本)。

首先,您需要添加MySQL JDBC驱动程序到项目依赖中。如果您使用Maven,可以在pom.xml中添加以下依赖:

<dependencies>
    <!-- MySQL JDBC Driver -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.23</version>
    </dependency>
</dependencies>

确保使用适合您MySQL服务版本的驱动程序版本。

下面是一个简单的Java代码片段,演示如何将一段文字插入到MySQL数据库中:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class DatabaseTextInserter {

    private static final String URL = "jdbc:mysql://localhost:3306/mydb";
    private static final String USER = "yourUsername";
    private static final String PASSWORD = "yourPassword";
    private static final String INSERT_TEXT_SQL = "INSERT INTO texts (content) VALUES (?)";

    public static void insertText(String text) {
        // 使用try-with-resources语句自动关闭资源
        try (
            Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
            PreparedStatement preparedStatement = conn.prepareStatement(INSERT_TEXT_SQL)
        ) {
            preparedStatement.setString(1, text);

            int rowAffected = preparedStatement.executeUpdate();
            if(rowAffected > 0){
                System.out.println("A piece of text was inserted successfully!");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        String textToStore = "Here is a small piece of text to store in the database.";
        insertText(textToStore);
    }
}

在上述代码中替换URL, USER, 和 PASSWORD 的值以匹配您的数据库信息。textToStore 变量应包含您希望存储到数据库的文本。

运行此代码时,它将尝试将提供的文本插入到数据库中。记得处理好数据库配置和权限,否则可能会遇到连接问题或权限错误。

注意:真实环境中,对数据库进行操作时,你应该考虑使用连接池提高性能,处理好异常情况,以及防止SQL注入等安全问题。

5、gpt食品安全法律小助手页面问答

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值