Hallo wir programmieren zur Zeit an einem Projekt und wir brauchen Hilfe bei Bugfixes!
Wir haben bei unserem Tagsystem unverständliche Errors. Die String macht uns das Leben schwer.
Der Error:
Der Code:
Danke im Vorraus
Wir haben bei unserem Tagsystem unverständliche Errors. Die String macht uns das Leben schwer.
Der Error:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 5
at java.lang.String.substring(Unknown Source)
at Start.tagExists(Start.java:45)
at Start.tagWrite(Start.java:107)
at Start.main(Start.java:11)
Der Code:
Java:
public class Start
{
static String Plan = "RandomText";
public static void main(String[] args)
{
{
Plan = Plan + tagWrite(Plan, "Jo", "SirWeedlord for the win!");
System.out.println(Plan);
}
}
public static boolean tagExists(String Text, String Tag)
{
String startTag = "<" + Tag + ">{";
String endTag = "}<" + Tag + ">";
int startTagPosition = 0;
int endTagPosition = 0;
for(int i = 0; i < Text.length(); i++)
{
if(Text.substring(i, startTag.length()) == startTag)
{
startTagPosition = i;
}
if(Text.substring(i, endTag.length()) == endTag)
{
endTagPosition = i;
}
}
if(startTagPosition + startTag.length() < endTagPosition)
{
return true;
}
else
{
return false;
}
}
public static String tagCreate(String Text, String Tag, String Information)
{
if(!tagExists(Text, Tag))
{
String startTag = "<" + Tag + ">{";
String endTag = "}<" + Tag + ">";
return Text + startTag + Information + endTag;
}
else
{
return Text;
}
}
public static String tagRead(String Text, String Tag)
{
if(tagExists(Text, Tag))
{
String startTag = "<" + Tag + ">{";
String endTag = "}<" + Tag + ">";
int startTagPosition = 0;
int endTagPosition = 0;
for(int i = 0; i < Text.length(); i++)
{
if(Text.substring(i, startTag.length()) == startTag)
{
startTagPosition = i;
}
if(Text.substring(i, endTag.length()) == endTag)
{
endTagPosition = i;
}
}
return Text.substring(startTagPosition + startTag.length(), endTagPosition - startTagPosition + startTag.length());
}
else
{
return "";
}
}
public static String tagWrite(String Text, String Tag, String Information)
{
if(tagExists(Text, Tag))
{
String startTag = "<" + Tag + ">{";
String endTag = "}<" + Tag + ">";
int startTagPosition = 0;
int endTagPosition = 0;
for(int i = 0; i < Text.length(); i++)
{
if(Text.substring(i, startTag.length()) == startTag)
{
startTagPosition = i;
}
if(Text.substring(i, endTag.length()) == endTag)
{
endTagPosition = i;
}
}
return Text.substring(0, startTagPosition + startTag.length()) + Information + Text.substring(endTagPosition);
}
else
{
return Text;
}
}
}
Danke im Vorraus