Remove non printable characters C# multilanguage
<p>I have a multi-language application in asp.net C#. Here I have to  create a zip file and use some items from the database to construct file name. I strip out special characters from file name. However if the language is German for example my trimming algorithm will remove some german characters like Umlaut.</p>

<p>Could someone provide me with a language adaptable trimming algorithm.</p>

<p>Here is my code:</p>

<pre><code>private string RemoveSpecialCharacters(string str)
{
    return str;
    StringBuilder sb = new StringBuilder();
    foreach (char c in str)
    {
        if ((c &gt;= '0' &amp;&amp; c &lt;= '9') || (c &gt;= 'A' &amp;&amp; c &lt;= 'Z') || (c &gt;= 'a' &amp;&amp; c &lt;= 'z') | c == '.' || c == '_' || c == ' ' || c == '+')
        {
            sb.Append(c);
        }
    }
    return sb.ToString();
}
</code></pre>

<p>thanks</p>
