Habanero.Faces.Win.ResourceStreamer.RightMatchStringArray C# (CSharp) Method

RightMatchStringArray() public static method

public static RightMatchStringArray ( string haystack, string needles ) : bool
haystack string
needles string
return bool
        public static bool RightMatchStringArray(string[] haystack, string[] needles)
        {
            if (needles.Length > haystack.Length) return false;
            var nlen = needles.Length;
            var hlen = haystack.Length;
            for (var offset = 1; offset <= needles.Length; offset++)
            {
                if (haystack[hlen - offset] != needles[nlen - offset])
                    return false;
            }
            return true;
        }
    }

Usage Example

        public static Stream GetResourceStreamByName(string name)
        {
            var splitChars = new char[] { '.' };
            var splitName  = name.Split(splitChars);

            foreach (var asm in AppDomain.CurrentDomain.GetAssemblies())
            {
                foreach (var rName in asm.GetManifestResourceNames())
                {
                    var parts = rName.Split(splitChars);
                    if (ResourceStreamer.RightMatchStringArray(parts, splitName))
                    {
                        return(asm.GetManifestResourceStream(rName));
                    }
                }
            }
            return(null);
        }