Fragmento de KivaKit n.º 3
Jan 02 2023
Más sobre KivaKit https://state-of-the-art.org/https://www.
package com.telenav.kivakit.snippets;
import static com.telenav.kivakit.core.collections.list.ObjectList.list;
import static com.telenav.kivakit.core.collections.list.StringList.stringList;
import static com.telenav.kivakit.filesystem.File.file;
import static com.telenav.kivakit.filesystem.Folders.kivakitTemporaryFolder;
import static com.telenav.kivakit.resource.FileName.fileName;
import static com.telenav.kivakit.resource.compression.archive.ZipArchive.AccessMode.READ;
import static com.telenav.kivakit.resource.compression.archive.ZipArchive.AccessMode.WRITE;
import static com.telenav.kivakit.resource.compression.archive.ZipArchive.zipArchive;
public class Snippet3 extends BaseSnippet
{
public static void main(String[] args)
{
new Snippet3().run();
}
@Override
protected Object onSnippet()
{
var file = kivakitTemporaryFolder().file("output.zip");
var result = stringList();
try (var zip = zipArchive(this, file, WRITE))
{
zip.add(list(
file("kivakit/pom.xml"),
file("kivakit/README.md"),
file("kivakit/.gitignore")
));
}
try (var zip = zipArchive(this, file, READ))
{
for (var entry : zip)
{
result.add(entry.toString());
if (entry.fileName().equals(fileName(".gitignore")))
{
result.add(entry.readText().trim());
}
}
}
return result.join("\n");
}
}
Output
[ZipEntry createdAt = 2023.01.01_01.51PM_MT, fileName = .gitignore, lastModified = 2023.01.01_01.51PM_MT, sizeInBytes = 382 bytes]
*.orig
**/target/
**/tools/downloads/**
tools/applications/**
setup.properties
**/build.properties
**/.settings/
**/.classpath
**/.project
**/.idea/
**/*.iml
**/*.eml
**/*.ipr
**/*.iws
**/.includepath
**/*.log
**/*.ids
**/.DS_Store
**/*.class
**/*.hprof
**/dependency-reduced-pom.xml
**/venv/
/venv/**
/kivakit-internal/tests/kivakit-kyro-serialization-tests/nbproject/
nbproject/
[ZipEntry createdAt = 2023.01.01_01.51PM_MT, fileName = README.md, lastModified = 2023.01.01_01.51PM_MT, sizeInBytes = 19.3K]
[ZipEntry createdAt = 2023.01.01_01.51PM_MT, fileName = pom.xml, lastModified = 2023.01.01_01.51PM_MT, sizeInBytes = 24.7K]
Más sobre KivaKit
https://state-of-the-art.org/
https://www.kivakit.org/
Artículos relacionados
Fragmento de KivaKit n.° 1 Fragmento de
KivaKit n.° 2
Seis razones por las que la mayoría de Java que ha visto no es Java real
Por qué un host no es una cadena y un puerto no es un número entero
Un número entero no es un conteo
Todo es divide y vencerás

![¿Qué es una lista vinculada, de todos modos? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































