initial commit
This commit is contained in:
74
util/ContentConverter.cs
Normal file
74
util/ContentConverter.cs
Normal file
@@ -0,0 +1,74 @@
|
||||
using System;
|
||||
namespace ThoughtWorks.QRCode.Codec.Util
|
||||
{
|
||||
|
||||
public class ContentConverter
|
||||
{
|
||||
|
||||
internal static char n = '\n';
|
||||
|
||||
public static String convert(String targetString)
|
||||
{
|
||||
if (targetString == null)
|
||||
return targetString;
|
||||
if (targetString.IndexOf("MEBKM:") > - 1)
|
||||
targetString = convertDocomoBookmark(targetString);
|
||||
if (targetString.IndexOf("MECARD:") > - 1)
|
||||
targetString = convertDocomoAddressBook(targetString);
|
||||
if (targetString.IndexOf("MATMSG:") > - 1)
|
||||
targetString = convertDocomoMailto(targetString);
|
||||
if (targetString.IndexOf("http\\://") > - 1)
|
||||
targetString = replaceString(targetString, "http\\://", "\nhttp://");
|
||||
return targetString;
|
||||
}
|
||||
|
||||
private static String convertDocomoBookmark(String targetString)
|
||||
{
|
||||
targetString = removeString(targetString, "MEBKM:");
|
||||
targetString = removeString(targetString, "TITLE:");
|
||||
targetString = removeString(targetString, ";");
|
||||
targetString = removeString(targetString, "URL:");
|
||||
return targetString;
|
||||
}
|
||||
|
||||
private static String convertDocomoAddressBook(String targetString)
|
||||
{
|
||||
|
||||
targetString = removeString(targetString, "MECARD:");
|
||||
targetString = removeString(targetString, ";");
|
||||
targetString = replaceString(targetString, "N:", "NAME1:");
|
||||
targetString = replaceString(targetString, "SOUND:", n + "NAME2:");
|
||||
targetString = replaceString(targetString, "TEL:", n + "TEL1:");
|
||||
targetString = replaceString(targetString, "EMAIL:", n + "MAIL1:");
|
||||
targetString = targetString + n;
|
||||
return targetString;
|
||||
}
|
||||
|
||||
private static String convertDocomoMailto(String s)
|
||||
{
|
||||
String s1 = s;
|
||||
char c = '\n';
|
||||
s1 = removeString(s1, "MATMSG:");
|
||||
s1 = removeString(s1, ";");
|
||||
s1 = replaceString(s1, "TO:", "MAILTO:");
|
||||
s1 = replaceString(s1, "SUB:", c + "SUBJECT:");
|
||||
s1 = replaceString(s1, "BODY:", c + "BODY:");
|
||||
s1 = s1 + c;
|
||||
return s1;
|
||||
}
|
||||
|
||||
private static String replaceString(String s, String s1, String s2)
|
||||
{
|
||||
String s3 = s;
|
||||
for (int i = s3.IndexOf(s1, 0); i > - 1; i = s3.IndexOf(s1, i + s2.Length))
|
||||
s3 = s3.Substring(0, (i) - (0)) + s2 + s3.Substring(i + s1.Length);
|
||||
|
||||
return s3;
|
||||
}
|
||||
|
||||
private static String removeString(String s, String s1)
|
||||
{
|
||||
return replaceString(s, s1, "");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user