How to get the Visual Force Page Name Using Apex Class?
We can get the Visual Force Page Name Using Apex Class, below is the Example:
public string getVFPageName() { String pageName = ApexPages.CurrentPage().getUrl(); // THIS IS THE CLOSEST YOU CAN GET SO FAR pageName = pageName.replaceFirst('/apex/',''); // IT ALWAYS STARTS WITH /APEX/ SO REMOVE IT pageName = EncodingUtil.urlEncode(pageName, 'UTF-8'); // YOU WANT TO END AT THE QUESTION MARK BUT // YOU HAVE TO ENCODE IT FIRST string[] pageNameExtra = pageName.split('%3F',0); // %3F IS THE VALUE OF THE QUESTION MARK IN UTF-8 // SO YOU MAY SPLIT THE STRING AT THAT POINT pageName = pageNameExtra[0]; // FOR THIS PURPOSE YOU ONLY NEED THE FIRST // IN THE RESULTING ARRAY return pageName; // HERE IS YOUR PRODUCT }