# Systemlautstärke / Zahlenwort zu Zahl / Zahl zu Zahlenwort



## Thunderhit (11. Februar 2007)

Wollte wissen ob und wenn ja, wie, es möglich ist die Systemlautstärke durch eine Java Application zu ändern. Hab mir schon die System-Klasse angesehen, aber da scheint so etwas nicht enthalten zu sein.
Kennt einer eine Möglichkeit?


----------



## Thomas Darimont (11. Februar 2007)

Hallo,

mit puren Java Mittel geht das so nicht. Was du machen könntest wäre entsprechende Tools ( http://ed.mullen.home.comcast.net/utility.html -> setvol) von Java aus aufzurufen.

Gruß Tom


----------



## Thunderhit (11. Februar 2007)

Funktioniert 1a, danke, aber nun mein Problem ist, dass ich von einer Funktion Strings in der Art von One Two Three usw. bekomme, aber wie kann ich "one" in den integer 1 wandeln? Klar, switch case wär möglich, aber das wär Wahnsinn! Gibts da evtl. eine Klasse dafür? Ne Suche hat nicht viel ergeben :-(
Von 1-100 wär das dann.


----------



## Thomas Darimont (11. Februar 2007)

Hallo,

das geht ganz einfach mit der ICU (International Components for Unicode) Bibliothek von IBM (beispielsweise in Eclipse zu finden -> Beispielsweise %ECLIPSE_HOME%/plugins/com.ibm.icu_3.6.0.20061215.jar):
Damit kann man ganz leicht eine Zahl als Wort und ein Zahlenwort als Zahl formatieren.

```
/**
 * 
 */
package de.tutorials;

import java.util.Locale;

import com.ibm.icu.text.RuleBasedNumberFormat;

/**
 * @author Tom
 * 
 */
public class ICUExample {

    /**
     * @param args
     */
    public static void main(String[] args) throws Exception {
        String numberAsWordGer = "siebenundneunzig";
        String numberAsWordUs = "ninety-seven";

        int number = 97;
        System.out.println(number
                + " -> "
                + new RuleBasedNumberFormat(RuleBasedNumberFormat.SPELLOUT)
                        .format(number));

        System.out.println(new RuleBasedNumberFormat(
                RuleBasedNumberFormat.SPELLOUT).parse(numberAsWordGer));

        System.out.println(number
                + " -> "
                + new RuleBasedNumberFormat(Locale.ENGLISH,
                        RuleBasedNumberFormat.SPELLOUT).format(number));

        System.out.println(new RuleBasedNumberFormat(Locale.ENGLISH,
                RuleBasedNumberFormat.SPELLOUT).parse(numberAsWordUs));
    }
}
```

Ausgabe:

```
97 -> siebenundneunzig
97
97 -> ninety-seven
97
```

Gruß Tom


----------

