Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Java scipt hex zähler





Frage

Hallo Java Scipt leute. Ich suche ein scipt das im HEX bereicht zählen kann. Also immer z.b. nach 3sekdunden plus 1 dazu bei 0 angefagen und F Ende das ganze 4 stellig. also nach 000F dann 0010 dann 0011 usw. Die aktuelle Ausgabe müßte dann wenn Möglich im Explorer zu sehn sein und gleichzeit in eine datei gespeichert werden. Ist das zu machen???

Antwort 1 von Dr.Ma-Busen

Moin!

Also direkt in Hex zählen wird etwas schwer, man kann aber im Intbereich zählen und den Intwert in einen Hexwert umrechnen. Mit folgender JavaScript-Funktion kann man das z.B. machen:
var hex = new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
function dezToHex(wert){
	if(wert < hex.length){
		return hex[wert];
	}
	return dezToHex(parseInt(wert / hex.length)) + hex[wert % hex.length];
}


Gibt aber nur den Hexwert zurück ohne führende nullen. Das kann man z.B. einfach erreichen mit:
var hexwert = dezToHex(99);
var out = "0000".substr(0,4-hexwert.length)+hexwert;


Die aktuelle ausgabe in einen Browserfenster anzeigen dürfte kein Problem sein, aber in eine Datei speichern wird schwer, da JavaScript aus einem Browser raus nicht auf das lokale Dateisystem zugreifen kann/darf.

MfG

Antwort 2 von dfo231

mh, ich dachte das wär sicher einfach zu machen
ich wollte auf mein PC im explorer die Aktuelle Hex zahl sehn, das gleich sollte jedoch auf eine Webseite sein.
ich dachte es wär möglich das java alle 3 oder 5s den wert hochzählt in eine datei speichert, mit ein programm sollte das dann per ftp auf dem webspace hochgeladen werden.
wenn jemande doch auf der seite ist sieht er den HEX wert.

Oder wär das auch ander machbar.
es soll aber vom mein rechner aus gehn.

Antwort 3 von Dr.Ma-Busen

Möglich ist es, aber nicht so wie du es vorhast mit JavaScript.
Du könnest dir auf deinen Rechner eine Webserver einrichten der von aussen dann via dyndns zu erreichen ist. Die Berecunung und ausgabe kannst du dann via PHP machen.
Dann müsstest du aber dein System aber Tag und Nacht laufen lassen, wenn man zu jeder tageszeit auf die Seite zugreifen können soll.

Antwort 4 von dfo231

mh, ich dachte das wär sicher einfach zu machen
ich wollte auf mein PC im explorer die Aktuelle Hex zahl sehn, das gleich sollte jedoch auf eine Webseite sein.
ich dachte es wär möglich das java alle 3 oder 5s den wert hochzählt in eine datei speichert, mit ein programm sollte das dann per ftp auf dem webspace hochgeladen werden.
wenn jemande doch auf der seite ist sieht er den HEX wert.

Oder wär das auch ander machbar.
es soll aber vom mein rechner aus gehn.

Antwort 5 von dfo231

mh, ich dachte das wär sicher einfach zu machen
ich wollte auf mein PC im explorer die Aktuelle Hex zahl sehn, das gleich sollte jedoch auf eine Webseite sein.
ich dachte es wär möglich das java alle 3 oder 5s den wert hochzählt in eine datei speichert, mit ein programm sollte das dann per ftp auf dem webspace hochgeladen werden.
wenn jemande doch auf der seite ist sieht er den HEX wert.

Oder wär das auch ander machbar.
es soll aber vom mein rechner aus gehn.

Antwort 6 von dfo231

hallo experten in sachen java

ich hab hier ein code gefunden und ungeschrieben der funktioniert auch, aber ich hab nur eine zeile.
kann jemand das dazuschreiben damit einmal von 00000 bis FFFFF durchgezählt wird.
so das ich die darstellung hab

00000
00001
00002
...
FFFFD
FFFFE
FFFFF

schaut mal ob ihr die lösung habt.

<html>
<head>
<title>Farbtabelle</title>
<script type="text/javascript">
<!--
function dtoh(z)
{
switch(z)
{
case 10: return "A"; break;
case 11: return "B"; break;
case 12: return "C"; break;
case 13: return "D"; break;
case 14: return "E"; break;
case 15: return "F"; break;
default: return z; break;
}
}

var text = "<b>";
for(var i = 0;i<=0;i++)
{
for(var j = 0;j<=4;j++)
{
fa = + dtoh(i) + "";

text = text + fa + "";
}
}
text = text + "</b><br>";
document.write(text);
// -->
</script>
</head>
<body>
</body>
</html>

Antwort 7 von Dr.Ma-Busen

Sicher das der Funktioniert?
Da sind zwei for-schleifen, die mit der Laufvariable i und die mit j.
Die schleife mit der Laufvariable j ist für anzahlen der stellen zuständig, als das die ausgabe 4 stellen hat.
Die schleife mit der Laufvariable i soll von 0 bis 0 durchlaufen. Sie wird also 1x durchlaufen. Wenn du mehrer werte haben möchtest dann musst du die öffters durchlaufen lassen, von z.B. 0 bis 10. Aber das Script wird dir werte ausgeben in der form:
0000
1111
2222
3333
4444
usw.

Du musst eigentlich nur die von mir schon genannten Code-Schnipsel zusammenführen und mit einer Schleife ergänzen und das zu errecihen was du haben möchtest.
Zum Beispiel so:
<html>
<body>
<script type="text/javascript">

var hex = new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
function dezToHex(wert){
	if(wert < hex.length){
		return hex[wert];
	}
	return dezToHex(parseInt(wert / hex.length))+hex[wert % hex.length];
}

var max = 20;
var out = "";
for(var i = 0; i < max; i++){
	var hexwert = dezToHex(i);
	out += "0000".substr(0,4-hexwert.length)+hexwert+"</br>";
}
document.write(out);
</script>
</body>
</html> 


In der Zeile mit: var max = 20; gibst du an wie weit gezählt werden soll und ausgegeben werden soll.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: