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
}

(1560)

Written by 

I am Sakthivel Madesh, a certified Salesforce Developer & Administrator working on Salesforce Technology since 2011. I am currently working in IBM Austraila as Sr. Salesforce Developer. I have worked on multiple technologies Like PHP, Java, Salesforce, I am very passionate about Salesforce and to earn 10 Salesforce Certification. I love Trailhead for learning Salesforce Skill and Become a Trailhead Ranger too. I Love to Learn & Share my Salesforce knowledge to Salesforce Learners/Beginner using My Blog and Salesforce Community.

Leave a Reply