Initial commit -Datei von Marmitt
commit
001f678938
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-19">
|
||||||
|
<attributes>
|
||||||
|
<attribute name="module" value="true"/>
|
||||||
|
</attributes>
|
||||||
|
</classpathentry>
|
||||||
|
<classpathentry kind="src" path="src"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>Indexverwaltung</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
</natures>
|
||||||
|
<filteredResources>
|
||||||
|
<filter>
|
||||||
|
<id>1712585292151</id>
|
||||||
|
<name></name>
|
||||||
|
<type>30</type>
|
||||||
|
<matcher>
|
||||||
|
<id>org.eclipse.core.resources.regexFilterMatcher</id>
|
||||||
|
<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
|
||||||
|
</matcher>
|
||||||
|
</filter>
|
||||||
|
</filteredResources>
|
||||||
|
</projectDescription>
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
encoding/<project>=UTF-8
|
|
@ -0,0 +1,14 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=19
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||||
|
org.eclipse.jdt.core.compiler.compliance=19
|
||||||
|
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||||
|
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||||
|
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||||
|
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
|
||||||
|
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
|
||||||
|
org.eclipse.jdt.core.compiler.release=enabled
|
||||||
|
org.eclipse.jdt.core.compiler.source=19
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,4 @@
|
||||||
|
|
||||||
|
public class Datei {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,93 @@
|
||||||
|
import java.io.*;
|
||||||
|
|
||||||
|
public class Index {
|
||||||
|
// Attribute
|
||||||
|
private final int MAX = 10;
|
||||||
|
private String dateiname = "Indexdatei.txt";
|
||||||
|
private int indextabelle[]; // 0 .. MAX-1
|
||||||
|
private RandomAccessFile eineIndexDatei;
|
||||||
|
|
||||||
|
// Konstruktor
|
||||||
|
public Index()
|
||||||
|
{
|
||||||
|
indextabelle = new int[MAX];
|
||||||
|
// Initialisierung der indextabelle
|
||||||
|
for(int i = 0; i < MAX; i++) indextabelle[i] = -1;
|
||||||
|
// Kein Datensatz zu Schluessel vorhanden
|
||||||
|
}
|
||||||
|
|
||||||
|
// Methoden
|
||||||
|
public void erzeugeEintrag(int schluessel, int index) throws IOException
|
||||||
|
{
|
||||||
|
/** Speichert zu einen Schluessel den zugehoerigen
|
||||||
|
* Datensatz-Index in der indextabelle
|
||||||
|
*/
|
||||||
|
if(schluessel < MAX)
|
||||||
|
indextabelle[schluessel] = index;
|
||||||
|
// Aktualisieren der Indexdatei,
|
||||||
|
// d. h. Abspeichern der Datei
|
||||||
|
aktualisiereIndexDatei(schluessel);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public int gibIndexZuSchluessel(int schluessel)
|
||||||
|
{
|
||||||
|
// Gibt zu dem Schluessel den gefundenen
|
||||||
|
// Datensatz-Index zurueck
|
||||||
|
if(schluessel < MAX)
|
||||||
|
return indextabelle[schluessel];
|
||||||
|
// oder -1, wenn Schluessel zu gross ist
|
||||||
|
else
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ladeIndexDatei() throws IOException
|
||||||
|
{
|
||||||
|
/** Liest die Indextabelle vollstaendig aus einer Datei
|
||||||
|
* Dies geschieht nur beim Start des Programms
|
||||||
|
*/
|
||||||
|
eineIndexDatei = new RandomAccessFile(dateiname, "r");
|
||||||
|
int index;
|
||||||
|
for(int schluessel = 0; schluessel < MAX; schluessel++)
|
||||||
|
{
|
||||||
|
index = eineIndexDatei.readInt();
|
||||||
|
indextabelle[schluessel] = index;
|
||||||
|
}
|
||||||
|
eineIndexDatei.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void speichereIndexDatei() throws IOException
|
||||||
|
{
|
||||||
|
/** Speichert die Indextabelle vollstaendig in einer Datei
|
||||||
|
* Dies geschlieht beim beenden des Programs
|
||||||
|
*/
|
||||||
|
eineIndexDatei = new RandomAccessFile(dateiname, "rw");
|
||||||
|
for(int schluessel = 0; schluessel < MAX; schluessel++)
|
||||||
|
eineIndexDatei.writeInt(indextabelle[schluessel]);
|
||||||
|
eineIndexDatei.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void aktualisiereIndexDatei(int schluessel) throws IOException
|
||||||
|
{
|
||||||
|
/** Aktualisiert die indextabelle in der Indexdatei
|
||||||
|
* Dies geschliet beim Hinzufuegen eines neuen
|
||||||
|
* Indexes oder Aendern eines alten Indexes
|
||||||
|
*/
|
||||||
|
eineIndexDatei = new RandomAccessFile(dateiname, "rw");
|
||||||
|
// eine int-Zahl belegt 4 Bytes
|
||||||
|
eineIndexDatei.seek((long)(schluessel * 4));
|
||||||
|
eineIndexDatei.writeInt(indextabelle[schluessel]);
|
||||||
|
eineIndexDatei.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Zum Testen
|
||||||
|
public void gibIndextabelleAus()
|
||||||
|
{
|
||||||
|
int schluessel = 0;
|
||||||
|
for(int element : indextabelle)
|
||||||
|
{
|
||||||
|
System.out.println(schluessel + " " + element);
|
||||||
|
schluessel++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
|
||||||
|
public class IndexUI {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue