Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

195 changes: 195 additions & 0 deletions content/arabic/java/document-formats/_index.md

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,249 @@
---
date: '2026-06-17'
description: 了解如何使用 Java 中的 GroupDocs.Metadata 更改图表创建时间并自动更新图表文件的元数据。
keywords:
- change diagram creation time
- groupdocs metadata java
- update diagram metadata
schemas:
- author: GroupDocs
dateModified: '2026-06-17'
description: Learn how to change diagram creation time and automate metadata update
for diagram files using GroupDocs.Metadata in Java.
headline: Change Diagram Creation Time in Metadata with GroupDocs Java
type: TechArticle
- description: Learn how to change diagram creation time and automate metadata update
for diagram files using GroupDocs.Metadata in Java.
name: Change Diagram Creation Time in Metadata with GroupDocs Java
steps:
- name: Load the Diagram Document
text: '*Explanation:* The `Metadata` constructor receives the path to your diagram
file. The try‑with‑resources block ensures the file is closed properly after
the operation.'
- name: Access the Root Package
text: '*Explanation:* The root package gives you direct access to all built‑in
metadata fields for the diagram.'
- name: Set the Creator Property
text: '*Explanation:* Assigns a new author name. Replace `"test author"` with
the actual creator.'
- name: Change Creation Time
text: '*Explanation:* This line **changes creation time** to the current system
date and time. You can also supply a specific `Date` instance if you need a
custom timestamp.'
- name: Define Company Information
text: '*Explanation:* Stores the company name associated with the diagram—useful
for enterprise tracking.'
- name: Set Document Category
text: '*Explanation:* Categorizes the file, helping you **update diagram category**
consistently across your repository.'
- name: Add Keywords
text: '*Explanation:* Keywords improve searchability; you can list any terms relevant
to the diagram’s content.'
- name: Save Changes
text: '*Explanation:* Persists all modifications to a new file, leaving the original
untouched.'
type: HowTo
- questions:
- answer: Yes, the same API works for all diagram formats supported by GroupDocs.Metadata.
question: Can I use this approach with other diagram formats like VSDX?
- answer: A free trial is sufficient for development and testing; a full license
is required for production deployments.
question: Do I need a license for development builds?
- answer: Set each property on the `DocumentProperties` object before invoking `metadata.save(...)`;
the library writes them all at once.
question: How can I update multiple properties in one call?
- answer: It’s recommended to save to a new file (as shown) and replace the original
only after confirming the update succeeded.
question: Is it safe to overwrite the original file?
- answer: Create a `java.util.Date` (or `java.time` instance) with the desired timestamp
and pass it to `setTimeCreated`.
question: What if I need to set a custom creation date instead of the current
time?
type: FAQPage
title: 使用 GroupDocs Java 更改元数据中的图表创建时间
type: docs
url: /zh/java/diagram-formats/update-diagram-metadata-groupdocs-java-guide/
weight: 1
---

# 更改元数据中图表创建时间 - 使用 GroupDocs Java

在本分步教程中,您将了解如何使用 GroupDocs.Metadata Java 库**更改图表创建时间**并更新图表文件的其他内置属性。自动化这些更改可节省数小时的手动编辑,确保整个仓库的时间戳一致,并使您的图表在任何文档管理系统中即时可搜索。

## 快速答案
- **主要目标是什么?** 更改图表文件的创建时间和其他元数据。
- **应该使用哪个库?** GroupDocs.Metadata for Java。
- **我需要许可证吗?** 免费试用足以进行测试;生产环境需要完整许可证。
- **我可以批量处理多个图表吗?** 可以——将相同逻辑包装在循环或并行流中。
- **需要哪个 Java 版本?** JDK 8 或更高。

## 什么是图表元数据中的“更改图表创建时间”?
更改创建时间会用新的日期时间值覆盖存储在图表文件(如 VDX 或 VSDX)中的原始时间戳。这使您能够将文件的元数据与实际的处理或归档日期对齐,而不是作者的原始时间戳,这对于审计追踪和准确的搜索结果至关重要。

## 为什么要自动化图表的元数据更新?
自动化元数据可确保每个图表遵循相同的命名、分类和时间戳标准,避免人为错误。它还能加快批量迁移,降低合规风险,并提升企业 DMS 平台的可发现性——在大规模项目中可节省高达 70 % 的人工工作量。

## 前置条件
- **Java Development Kit (JDK) 8+** 已在您的机器上安装。
- **IDE** 如 IntelliJ IDEA 或 Eclipse。
- **Maven**(或手动 JAR 管理)用于依赖管理。
- 对 Java 类、方法和异常处理有基本了解。

### 必需的库和依赖
如果使用 Maven,请将以下仓库和依赖添加到您的 `pom.xml` 文件中:

```xml
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/metadata/java/</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-metadata</artifactId>
<version>24.12</version>
</dependency>
</dependencies>
```
如果您更喜欢直接下载,请访问 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 获取最新版本。

### 环境设置
- JDK 8 或更高。
- IntelliJ IDEA、Eclipse 或任何兼容 Java 的 IDE。

### 知识前提
了解 Java 语法和基本文件 I/O 将使教程更顺畅,但步骤已用通俗语言解释。

## 为 Java 设置 GroupDocs.Metadata
### 安装说明
**Maven 用户:** 上面的代码片段会自动添加仓库并获取所需的 JAR。
**直接下载用户:** 从 [GroupDocs](https://releases.groupdocs.com/metadata/java/) 下载 JAR 后,将其添加到项目的类路径中。

### 许可证获取
- **免费试用:** 免费体验该库。
- **临时许可证:** 获取用于延长测试的临时许可证[此处](https://purchase.groupdocs.com/temporary-license/)。
- **购买:** 为生产环境获取完整许可证。

### 基本初始化
`Metadata` 是表示文档元数据容器的核心类,提供对所有内置属性的读写访问。要开始使用 GroupDocs.Metadata,请导入该类并打开图表文件:

```java
import com.groupdocs.metadata.Metadata;

// Load a diagram document and access its metadata
try (Metadata metadata = new Metadata("YOUR_DOCUMENT_DIRECTORY/InputVdx")) {
// Your code here
}
```

## 实施指南
### 如何更改图表文件的创建时间
在本节中,我们将逐步演示如何**更改图表创建时间**并更新其他常用属性,如作者、公司和类别。该过程包括使用 Metadata API 加载图表,访问其根包,设置所需字段,最后将更改保存到新文件,确保原文件保持不变。

#### 步骤 1:加载图表文档
```java
try (Metadata metadata = new Metadata("YOUR_DOCUMENT_DIRECTORY/InputVdx")) {
// Access and update document properties here
}
```
*说明:* `Metadata` 构造函数接收图表文件的路径。try‑with‑resources 块确保操作完成后文件被正确关闭。

#### 步骤 2:访问根包
```java
DiagramRootPackage root = metadata.getRootPackageGeneric();
```
*说明:* 根包让您直接访问图表的所有内置元数据字段。

#### 步骤 3:设置创建者属性
```java
root.getDocumentProperties().setCreator("test author");
```
*说明:* 分配新的作者名称。将 `"test author"` 替换为实际的创建者。

#### 步骤 4:更改创建时间
```java
root.getDocumentProperties().setTimeCreated(new Date());
```
*说明:* 此行**更改创建时间**为当前系统日期和时间。如果需要自定义时间戳,也可以提供特定的 `Date` 实例。

#### 步骤 5:定义公司信息
```java
root.getDocumentProperties().setCompany("GroupDocs");
```
*说明:* 保存与图表关联的公司名称——对企业跟踪很有用。

#### 步骤 6:设置文档类别
```java
root.getDocumentProperties().setCategory("test category");
```
*说明:* 对文件进行分类,帮助您在整个仓库中一致地**更新图表类别**。

#### 步骤 7:添加关键字
```java
root.getDocumentProperties().setKeywords("metadata, built-in, update");
```
*说明:* 关键字提升可搜索性;您可以列出任何与图表内容相关的词汇。

#### 步骤 8:保存更改
```java
metadata.save("YOUR_OUTPUT_DIRECTORY/OutputVdx");
```
*说明:* 将所有修改持久化到新文件,原文件保持不变。

### 常见问题与故障排除
- **文件未找到:** 检查输入路径并确保文件扩展名与实际格式匹配。
- **访问被拒绝:** 检查输入和输出目录的读写权限。
- **无效的日期格式:** 使用与 API 兼容的 `java.util.Date` 或 `java.time` 对象。

## 实际应用
1. **自动化文档归档** – 将旧图表移动到归档时,自动**更改图表创建时间**为归档日期并设置统一的类别。
2. **版本控制集成** – 在每次发布时更新创建时间,使时间戳与 Git 提交保持同步。
3. **企业 DMS 标准化** – 在所有图表资产中强制执行公司范围的作者、公司和关键字政策。

## 性能考虑
- **批量处理:** 将上述步骤包装在循环中,一次运行处理数十个文件。
- **内存管理:** 及时释放每个 `Metadata` 实例(try‑with‑resources 块会自动完成)。
- **异步执行:** 对于大批量处理,考虑使用 `CompletableFuture` 并行运行更新,避免阻塞主线程。
- **量化能力:** GroupDocs.Metadata 支持超过 30 种图表格式,且可在不将整个文档加载到内存的情况下处理高达 500 MB 的文件,在典型服务器硬件上每个文件的更新耗时低于 200 ms。

## 结论
您现在了解如何使用 Java 中的 GroupDocs.Metadata **更改图表创建时间**并更新图表文档的其他内置元数据属性。通过自动化这些步骤,您可以在组织内保持一致、可搜索且合规的文档。

**下一步**
- 尝试使用 GroupDocs.Metadata 支持的其他文件格式(PDF、DOCX 等)。
- 将代码集成到 CI/CD 流水线,以在每次构建时强制执行元数据标准。

准备好尝试了吗?前往 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 并立即开始实现您自己的元数据自动化。

---

**最后更新:** 2026-06-17
**测试版本:** GroupDocs.Metadata 24.12
**作者:** GroupDocs

## 常见问题解答

**问:我可以将此方法用于其他图表格式,如 VSDX 吗?**
答:可以,相同的 API 适用于 GroupDocs.Metadata 支持的所有图表格式。

**问:开发构建是否需要许可证?**
答:免费试用足以用于开发和测试;生产部署需要完整许可证。

**问:如何在一次调用中更新多个属性?**
答:在调用 `metadata.save(...)` 之前,在 `DocumentProperties` 对象上设置每个属性;库会一次性写入所有属性。

**问:覆盖原始文件安全吗?**
答:建议先保存为新文件(如示例所示),确认更新成功后再替换原文件。

**问:如果需要设置自定义创建日期而不是当前时间怎么办?**
答:创建带有所需时间戳的 `java.util.Date`(或 `java.time` 实例),并将其传递给 `setTimeCreated`。

## 相关教程

- [如何使用 GroupDocs.Metadata 更新 Java 图表元数据](/metadata/java/diagram-formats/update-diagram-metadata-groupdocs-java/)
- [如何使用 GroupDocs.Metadata for Java 更新 DXF 作者元数据 – 完整指南](/metadata/java/cad-formats/update-dxf-author-metadata-groupdocs-java/)
- [使用 GroupDocs.Metadata 按日期自动化 Java 元数据更新以实现高效文件管理](/metadata/java/working-with-metadata/java-metadata-update-by-date-groupdocs/)
Loading
Loading