/*******************************************************
* JavaScript的StringBuffer工具
* Date:2011/4/20
*******************************************************/
function StringBuffer() {
this.str = "";
this.objArray = new Array();
this.append = function (s) {
if (this.length() == 0) {
this.objArray[0] = s;
} else {
this.objArray[this.length() + 1] = s;
}
};
this.toString = function () {
if (this.length() == 0) {
return "";
} else {
return this.objArray.join("");
}
};
this.chatAt = function (s) {
if (this.toString() != "") {
return this.toString().indexOf(s);
}
};
this.clear = function () {
if (this.length() != 0) {
this.objArray.length = 0;
}
};
this.length = function () {
return this.objArray.length;
};
this.substring = function (start, end) {
if (start > 0 || start == 0) {
if (end <= this.length() && (end > start)) {
return this.toString().substring(start, end);
} else {
alert("JavaScriptException:IndexOutOfBounds");
return null;
}
} else {
alert("JavaScriptException:IndexOutOfBounds");
return null;
}
};
this.toArray = function () {
var tempArray = this.objArray.join(",");
return tempArray.split(",");
};
this.setcharAt = function (charIndex, str) {
if (charIndex < 0 || charIndex > this.length()) {
alert("JavaScriptException:IndexOutOfBounds");
return null;
} else {
this.objArray[charIndex] = str;
}
return this.toString();
};
this.replace = function (oldchar, newchar) {
var foundChar = this.toString().indexOf(oldchar);
if (foundChar < 0) {
alert("JavaScriptException:not found oldchar");
return null;
} else {
return this.toString().replace(oldchar, newchar);
}
};
}