/** 获取cdn资源下载路径(WWW用) */ public static string getCDNResourcePath(string url, int resourceVersion) { if (!ShineSetting.isRelease) { return(getStreamingAssetsPath(url, true)); } StringBuilder sb = StringBuilderPool.create(); sb.Append(ShineGlobal.cdnSourcePath); sb.Append('/'); sb.Append(getPlatformName()); sb.Append("/resource_"); sb.Append(resourceVersion); sb.Append('/'); sb.Append(url); return(StringBuilderPool.releaseStr(sb)); }
/** 获取资源路径(streamingAsset)(needPlatform:是否需要运行平台前缀)(forWWW:是否www加载) */ private static string toGetPath(int type, string url, bool forWWW) { StringBuilder sb = StringBuilderPool.create(); if (forWWW && (type != StreamingAssetsPath || SystemControl.platform != RuntimePlatform.Android || !ShineSetting.isRelease)) { sb.Append("file:///"); } //调试模式 if (!ShineSetting.isRelease && type == StreamingAssetsPath) { sb.Append(_dataPath); sb.Append(ShineGlobal.sourcePath); sb.Append('/'); if (_isCommonResourceFunc != null && _isCommonResourceFunc(url)) { sb.Append("common/"); } else { sb.Append(getPlatformName()); sb.Append('/'); } } else { sb.Append(toGetRootPath(type)); if (type != StreamingAssetsPath) { sb.Append("/resource"); } sb.Append('/'); } sb.Append(url); return(StringBuilderPool.releaseStr(sb)); }
/** 输出数据字典 */ public static void printDataDic <T>(IntObjectMap <T> dic) where T : BaseData { StringBuilder sb = StringBuilderPool.create(); IntObjectMap <T> fDic; if (!(fDic = dic).isEmpty()) { int[] keys = fDic.getKeys(); T[] values = fDic.getValues(); int fv = fDic.getFreeValue(); int k; T v; for (int i = keys.Length - 1; i >= 0; --i) { if ((k = keys[i]) != fv) { v = values[i]; sb.Append(k); sb.Append(":"); if (v == null) { sb.Append("null"); } else { sb.Append(v.toDataString()); } sb.Append("\n"); } } } Ctrl.log(StringBuilderPool.releaseStr(sb)); }
public static void toThrowError(StringBuilder sb, Exception e) { if (sb.Length > 0) { sb.Append("\n"); } if (e != null) { sb.Append(e.Message); sb.Append("\n"); } else { e = new Exception(sb.ToString()); } string es = null; if (ShineSetting.needError) { es = sb.ToString(); } sb.Append(stackTraceToString(e)); sb.Append("\n"); string str = StringBuilderPool.releaseStrForThread(sb); toLog(str, SLogType.Error); if (ShineSetting.needError) { throw new Exception(es); } }
public LogInfo(string head) { _sb = StringBuilderPool.create(); putHead(head); }
public LogInfo() { _sb = StringBuilderPool.create(); }
/** 释放并获取string */ public string releaseStr() { return(StringBuilderPool.releaseStr(sb)); }
public DataWriter() { sb = StringBuilderPool.create(); }